shellexecute编译链接报错怎么解决

shellexecute编译链接报错怎么解决,第1张

Shellexecute是一个Windows SDK API函数,用于执行外部应用程序或打开文件。如果在编译链接过程中遇到Shellexecute的报错,你可以按照以下步骤尝试解决:

1. 检查是否正确包含Windows.h的头文件,以便在代码中引用Windows SDK API。

2. 确认程序是否指定了正确的链接器引用库。在 Visual Studio 中,你可以在链接器配置中添加kernel32.lib和user32.lib依赖项。

3. 避免使用中文或包含特殊字符的文件路径或命令行参数。如果需要使用中文或特殊字符的文件路径或命令行参数,可以使用ShellExecuteW版本的API函数,并确保使用的字符串是宽字符格式。

4. 确保编译器版本和 *** 作系统相符。如果编译器不兼容当前的 *** 作系统版本,也会导致编译链接报错。

如果以上步骤不能解决问题,你可以尝试在互联网上搜索相关问题的解决方法,或者参考文档和示例代码,逐步排查原因并进行解决。

#include <windows.h>

#include <iostream>

#include <string.h>

#include <stdlib.h>

#include <tlhelp32.h> // 声明快照函数的头文件

using namespace std

//#pragma comment( linker, "/subsystem:\"windows\" /entry:\"mainCRTStartup\"" )

int main(int argc, char* argv[])

{

char join[]="\""

char begin[128]

::GetCurrentDirectory(100,begin)

char end[]="\\Maxthon.exe"

strcat(begin,end)

strcat(begin,join)

strcat(join,begin)

::ShellExecute(NULL,"open",join, NULL,NULL,SW_SHOW )

printf("%s\n",join)

return 0

}

右键点工程名,选设置,然后选c/c++属性页,再选catagory选单中选 precompiled header ,将选项置成no use 或者autometic

shellexecute 在什么头文件里包含

ShellExecute的功能是运行一个外部程序(或者是打开一个已注册的文件、打开一个目录、打印一个文件等等),并对外部程序有一定的控制。有几个API函数都可以实现这些功能,但是在大多数情况下ShellExecute是更多的被使用的,同时它并不是太复杂。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11691392.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-18
下一篇 2023-05-18

发表评论

登录后才能评论

评论列表(0条)

保存