我创建了一个Windows服务,想要检查系统是64位还是32位,并在检查后从我的服务器下载相应的文件。但是我现在的代码不能正常工作。
我正在使用。
int system = IntPtr.Size;
if (system == 4)
{
//the system is 32 bit
WebClient webClient = new WebClient();
webClient.DownloadFile("http://www.myserver.com/updates/dll/bin.dll", "C:\bin.dll");
}
if (system == 8)
{
//the system is 64bit
WebClient webClient = new WebClient();
webClient.DownloadFile("http://www.myserver.com/updates/dll/64/bin.dll", "C:\bin.dll");
}
答案 0 :(得分:1)
您可以使用System.Environment.Is64BitOperatingSystem属性检查操作系统版本是否为x64,而不是检查指针大小。
答案 1 :(得分:1)
而不是使用IntPtr.Size而是使用内置函数。 MSDN说https://msdn.microsoft.com/en-us/library/system.environment.is64bitoperatingsystem(VS.100).aspx 它可以通过环境调用