cannot convert parameter 2 from 'const char[15]' to 'LPWSTR';
来源:互联网 发布:无线传感器网络的用途 编辑:程序博客网 时间:2024/05/16 12:26
用于监控另一个进程,发现该进程关掉了就自动把它重启。
可以用脚本程序,如vbs或者bat实现。下面程序使用C++实现:用于监视目标程序HTServer.exe,如果目标程序没有在运行,则运行目标程序。
代码如下:
- // HTServerMonitor.cpp : Defines the entry point for the console application.
- //
- #include <iostream>
- #include <windows.h>
- #include <stdio.h>
- #include <tchar.h>
- using namespace std;
- int _tmain(int argc, _TCHAR *argv[])
- {
- STARTUPINFO si;
- PROCESS_INFORMATION pi; //进程信息:
- ZeroMemory(&si, sizeof(si));
- si.cb = sizeof(si);
- ZeroMemory(&pi, sizeof(pi));
- do{
- // 创建子进程,判断是否执行成功
- if(!CreateProcess( NULL,"cmd /c C:\\Users\\hk\\Desktop\\HTVersions\\HTServer\\HTServerEditVersion4.2\\Debug\\HTServer.exe",NULL,NULL,FALSE,0,NULL,NULL,&si,&pi))
- {
- cout << "创建进程失败.." << GetLastError() << endl;
- system("pause"); //用于测试
- return 0;
- }
- //进程执行成功,打印进程信息
- cout << "以下是子进程的信息:" << endl;
- cout << "进程ID pi.dwProcessID: " << pi.dwProcessId << endl;
- cout << "线程ID pi.dwThreadID : " << pi.dwThreadId << endl;
- // 等待知道子进程退出...
- WaitForSingleObject( pi.hProcess, INFINITE);//检测进程是否停止
- //WaitForSingleObject()函数检查对象的状态,如果是未确定的则等待至超时
- //子进程退出
- cout << "子进程已经退出..." << endl;
- //关闭进程和句柄
- CloseHandle(pi.hProcess);
- CloseHandle(pi.hThread);
- //system("pause");//执行完毕后等待
- }while(true);//如果进程推出就再次执行方法
- exit(0);
- return 0;
- }
在VC6下编译运行没有问题,但是当用VS08的时候,就会报错:
error C2664:'CreateProcessW' : cannot convert parameter 2 from 'const char[15]' to 'LPWSTR';
解决方法:打开 属性->常规->字符集设置成“未设置”。
- cannot convert parameter 2 from 'const char[15]' to 'LPWSTR';
- 'strcpy' : cannot convert parameter 2 from 'LPCTSTR' to 'const char *'
- cannot convert parameter 2 from 'const char [12]' to 'LPCWSTR'
- cannot convert parameter 1 from 'CString' to 'const char *'
- cannot convert parameter 1 from 'const char *' to 'LPCWSTR
- cannot convert parameter 1 from 'std::string' to 'const char *'
- LoadCursorA' : cannot convert parameter 2 from 'const int' to 'const char *
- error C2664: 'MessageBoxW' : cannot convert parameter 2 from 'const char [2]' to 'LPCWSTR'
- 关于VS2005的error C2664: cannot convert parameter 2 from 'const char [2]' to 'LPCWSTR
- 报错 error C2664: 'CreateWindowExA' : cannot convert parameter 2 from 'unsigned short [10]' to 'const char *'
- error C2664: 'CreateWindowExW' : cannot convert parameter 2 from 'const char [16]' to 'LPCWSTR'
- VS2008中报错:cannot convert parameter 2 from 'char *' to 'LPCWSTR'
- VS2005中报错:cannot convert parameter 2 from 'char *' to 'LPCWSTR'
- 'strlen' : cannot convert parameter 1 from 'char [][80]' to 'const char *'
- cannot convert parameter 1 from 'const char [] ' to 'const wchar_t * '的解决方法
- cannot convert parameter 1 from 'const char [] ' to 'const wchar_t * '的解决方法
- cannot convert parameter 1 from 'const char [] ' to 'const wchar_t * '的解决方法
- Cannot convert from 'const char [..]' to 'LPCTSTR'
- ecshop首页调用某一类别下的商品
- tamarin之Atom
- linux下cat命令详解
- A星算法 cocos2d-x初学者学习过程所遇问题
- Linux系统文件I/O编程(三)---I/O多路复用
- cannot convert parameter 2 from 'const char[15]' to 'LPWSTR';
- Hibernate Session was already closed
- NFS与IOS-Android
- .NET怎样利用App.config文件进行数据库连接
- oracle RAC 主机文件配置,以及连接字符串配置
- Android适配
- 篮球
- C判断大小端方法
- 国家气象局提供的天气预报接口 如何使用