gpt4 book ai didi

c - 使用 VS2010 构建的应用程序在 VS-Express2008 中不起作用 - C

转载 作者:太空宇宙 更新时间:2023-11-04 03:07:44 25 4
gpt4 key购买 nike

我在一个解决方案中编写了一个包含两个项目的应用程序,每个项目仅包含 1 个 .c 源文件。我使用的是 Visual Studio 2010 Ultimate,但由于大学仅支持 2008,我决定创建一个空白解决方案并将源文件复制到新解决方案中。

在 VS2008 Express 中创建新解决方案、创建两个项目并重新创建源文件并将其添加到项目后,我运行了该应用程序。

由于某种原因,应用程序只有一部分不起作用,我使用 CreateProcess() 来执行项目 2 中的“Project1.exe”。

这在 vs2010 下工作正常,但由于某种原因它在 VS2008 express 下无法工作,GetLastError() 显示错误 2:找不到文件。

这是在两个 IDE 中显示相同代码的图像:

Error Image

我没有使用任何特殊的东西,我已经确保两个解决方案/项目都使用 .Net 3.5。

我不明白为什么它适用于一个 IDE 而不是另一个。

有什么建议吗?谢谢!

编辑:

.exe 的屏幕截图

.exe location

最佳答案

您没有将 .exe 的完整路径名传递给 CreateProcess()。这通常只有在你幸运的情况下才有效。 .exe 文件必须位于同一目录中,并且工作目录必须设置为该目录。首先验证 .exes 是否在您希望的位置。

通过生成第二个 .exe 的完整路径来避免对工作目录的依赖。使用 GetModuleFileName(),传递 NULL,获取第一个 .exe 的完整路径

关于c - 使用 VS2010 构建的应用程序在 VS-Express2008 中不起作用 - C,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2754411/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com