【发布时间】:2016-06-16 08:50:51
【问题描述】:
我在 Visual Studio 2013 中创建了一个应用程序,我想将其构建为 64 位应用程序。我按照here 的步骤将我的项目配置为 64 位应用程序。现在的问题:
如果我从 VS 运行应用程序,它可以正常工作(作为 64 位应用程序)。
如果我运行在 bin 中生成的可执行文件,它就像 32 位应用程序一样工作。
重要提示:
应用程序必须获取所有正在运行的进程并将它们显示在带有进程名称和文件名(可执行文件的路径)的网格中。
这是我从 VS 运行时网格的样子
这就是我从 bin 运行 .exe 时网格的样子
我知道该应用程序像 32 位应用程序一样工作,因为我尝试访问 .MainModule.FileName 以查找 exe 的路径,而 32 位进程在尝试访问时会抛出 Win32 异常64位进程。我处理了那个异常,但我找不到路径,我需要它。
我需要一种将 bin 中的 .exe 生成为 64 位应用程序的方法,或者至少了解如果配置为 64 位应用程序,它为什么不能像 64 位应用程序一样工作。
【问题讨论】:
标签: c# visual-studio process 64-bit