C++中的CreateProcess函数的问题

来源:百度知道 编辑:UC知道 时间:2024/06/22 19:19:02
CreateProcess这个函数第2个参数

到底是LPSTR类型的

还是LPWSTR类型的?

为什么我在编译Win32 APP exe程序时候就是LPSTR类型的,而且一切正常(正常编译)正常运行..

但是在Win32 APP DLL 程序中就要求转换成LPWSTR类型 否则编译时出错.
转换成LPWSTR类型后可以编译成功 但是编译好的程序运行到这里系统会报错..

我用的是Microsoft Visual Studio 2005

哪位高人指点小弟一下 也可以加我的QQ:2172897 验证:baidu

老大,你自己看函数的原型形式吧。。。。。。。。。。。

WINBASEAPI
BOOL
WINAPI
CreateProcessA(
LPCSTR lpApplicationName,
LPSTR lpCommandLine,
LPSECURITY_ATTRIBUTES lpProcessAttributes,
LPSECURITY_ATTRIBUTES lpThreadAttributes,
BOOL bInheritHandles,
DWORD dwCreationFlags,
LPVOID lpEnvironment,
LPCSTR lpCurrentDirectory,
LPSTARTUPINFOA lpStartupInfo,
LPPROCESS_INFORMATION lpProcessInformation
);
WINBASEAPI
BOOL
WINAPI
CreateProcessW(
LPCWSTR lpApplicationName,
LPWSTR lpCommandLine,
LPSECURITY_ATTRIBUTES lpProcessAttributes,
LPSECURITY_ATTRIBUTES lpThreadAttributes,
BOOL bInheritHandles,
DWORD dwCreationFlags,
LPVOID lpEnvironment,
LPCWSTR lpCurrentDirectory,
LPSTARTUPINFOW lpStartupInfo,
LPPROCESS_INFORMATION lpProcessInformation
);

我也遇到过这个问题.

原因是VC2005里把默认