这个问题已经在这里有了答案:

无论如何,我可以确定我的.NET进程是以32位还是64位进程运行的吗?

===============>>#1 票数:5

如果使用的是.NET 4.0或更高版本,则可能需要Environment.Is64BitProcess 否则,请IntPtr.Size其他答案中的建议检查IntPtr.Size

===============>>#2 票数:3

if (IntPtr.Size == 4)
    // 32-bit

else if (IntPtr.Size == 8)
    // 64-bit

从这个问题

但是,正如@Jim Mischel指出的那样,在.NET 4及更高版本上,您应该使用

Environment.Is64BitProcess

===============>>#3 票数:1

使用IntPtr.Size属性找出进程位数。

if(IntPtr.Size == 4)
 // 32 bit process
else
 // 64bit process

  ask by translate from so

未解决问题?本站智能推荐:

5回复

以编程方式提升进程权限?

我正在尝试使用InstallUtil.exe安装服务,但是通过Process.Start调用。 这是代码: 其中m_strInstallUtil是完全限定的路径,exe是“InstallUtil.exe”, strExePath是我的服务的完全限定路径/名称。 从提升的命令提示符
2回复

以编程方式找出系统是否支持待机

有时在Windows XP安装中会发生这种情况。 除非安装了显示驱动程序,否则不支持诸如待机和休眠之类的节能操作。 可以检查系统是否支持休眠-http: //pinvoke.net/default.aspx/powrprof/IsPwrHibernateAllowed.html 检
5回复

如何以编程方式找出服务器上有哪些数据库?

有什么办法可以通过编程方式找出服务器上存在哪些数据库? 这是因为我想向用户显示所有可用的数据库,并允许他选择自己感兴趣的数据库。
9回复

在C#中以编程方式杀死进程树

我以编程方式启动Internet Explorer,代码如下所示: 这将生成Windows任务管理器中可见的2个进程。 然后,我尝试用以下方法终止进程: 这导致任务管理器中的一个进程被关闭,另一个进程仍然存在。 我尝试检查任何具有子进程的属性,但没有找到。 我怎么能杀死其他
1回复

如何以编程方式列出IIS工作进程?

我尝试按照此处的建议使用WorkerProcess类,但收到“ System.Management.ManagementException:无效的类”错误消息。 还有其他想法吗?
2回复

是否可以以编程方式调试自己的.NET进程

.NET提供了一个API来调试程序: http : //msdn.microsoft.com/en-us/library/bb397953.aspx是否可以在同一个进程中调试线程? 换句话说,是否可以在同一进程中将调试器和debugee放在不同的线程中?
2回复

如何从C#中的32位进程运行64位进程? [重复]

这个问题已经在这里有了答案: 使用%temp%的Process.Start文件名 5个答案 我在这里看到了类似的问题,但找不到我的问题的答案。 这几乎可以理解: 如何从32位进程启动64位进程 但是我缺少有关如何做到这一点的解释。 我正在努力实现以
2回复

如何以编程方式告诉XP 64位和Server 2003 64位之间的区别

我有一个程序,我需要根据用户运行的Windows版本显示不同的下载链接。 使用此答案,我能够检测操作系统的版本。 同样使用这个答案,我可以检测到我是在32位还是64位版本的OS上运行。 这完全符合我的需求,但是我遇到了这个页面 ,其中指出Windows XP 64-Bit Edit
1回复

如何以编程方式检测DLL是在.NET中编译为32位还是64位?

到目前为止,我已经能够使用以下代码加载dll: 但是我不知道如何检测它是32位还是64位。
8回复

如何以编程方式重新启动Windows资源管理器进程

我正在开发一个Windows shell扩展,不幸的是,在更改DLL时,我必须重新启动Windows资源管理器(因为它将DLL保存在内存中)。 我从Dino Esposito找到了这个程序,但它对我不起作用。 有人可以分享他们可以分享的东西吗? PS我意识到我可以去任务管理器