为什么ShellExecute不起作用?

时间:2014-12-19 23:27:47

标签: c++ shellexecute

#include "ShellAPI.h";
ShellExecute(Handle,NULL,"file.txt",NULL,NULL,SW_RESTORE);

为什么这段代码不起作用?

这里的错误屏幕: a busy cat

1 个答案:

答案 0 :(得分:4)

几个问题:

  • 您必须先加windows.h,然后才能加入shellapi.h
  • 在包含系统标题时,您应该在标题周围使用<>而不是""
  • ;指令后,您不应该使用分号#include
  • 您的ShellExecute()来电需要在一个函数中,可能是int main(void)
  • Handle未定义。根据{{​​3}}(您应该已经阅读过),您可能需要NULL

#include <windows.h>
#include <ShellAPI.h>

int main(void) {
    ShellExecute(NULL, NULL, "file.txt", NULL, NULL, SW_RESTORE);
    return 0;
}