将模拟应用程序部署到另一台计算机时遇到一些问题。直到几个星期前,它只是检查可执行文件和目标机器所需的DLL。但是,由于最近我无法在目标机器上启动应用程序而没有获得windows(7)消息,指出应用程序无法正常工作并需要关闭。但是,如果我将应用程序重命名为任何其他名称,它可以正常工作。重命名后,它不会重新开始。看来原来的名字是" simspray.exe"顺便说一句,不知怎的问题。
有没有人知道问题可能在哪里? (尽管有重命名的解决方法,我真的很好奇)
该应用程序使用一些库,主要是qt 4.8.3,qwt,nvToolsExtension(nvidia),glew。
我们已经尝试了以下内容: - 使用全新安装的Win7全新PC - depends显示没有遗漏的依赖项 - 没有运行防病毒程序,Windows防御者和防火墙禁用,没有其他第三方安全工具 - 除非在项目设置中重命名输出exe名称
,否则应用程序不会从visual studio中启动感谢您的帮助。
答案 0 :(得分:0)
尝试以愚蠢的方式搜索使用可执行文件名的代码,如下所示:
char buffer[sizeof(argv[0])+1];
strcpy(buffer, argv[0]);
或者这个:
int len = strlen("simspray.exe");
char *buffer = malloc(len);
strcpy(buffer, GetCommandLine());
我知道的已知示例,但是如果您将文件重命名为正确的长度,这两个都会缓冲溢出但神奇地看起来有效。