2022-07-19 乐帮网
c#
编写一个windows form 程序,在运行的时候需要根据不同的模式动态加载不同的dll。所以在运行的时候需要判断当前是以64模式运行还是以32位模式运行,注意:运行的模式和操作系统的关系,当前系统是64位系统 但是程序并不一定是以64位模式运行,也可能在编译的时候选择输出32位模式。前提条件: framework4.0 以下我的判断方式
var plate = Environment.Is64BitOperatingSystem ? "x64" : "x86";
Console.WriteLine(plate);
当我们在VS中选择输出的目标平台是x86时就发现有问题了。上面代码只是判断了操作系统是64bit还是32bit,并不能反应当前运行的程序的状态。正确的方式也很简单,在程序中我们可以根据int长度来判断,简单又方便,如下代码:
var plate = IntPtr.Size == 8? "x64" : "x86";
Console.WriteLine(plate);
特此记录!
关注我的微信公众号
在公众号里留言交流
投稿邮箱:1052839972@qq.com
庭院深深深几许?杨柳堆烟,帘幕无重数。
玉勒雕鞍游冶处,楼高不见章台路。
雨横风狂三月暮。门掩黄昏,无计留春住。
泪眼问花花不语,乱红飞过秋千去。
如果感觉对您有帮助
欢迎向作者提供捐赠
这将是创作的最大动力