我们有一个Microsoft.Win32命名空间,但它能保证在64位Windows环境中工作吗?对于64位的情况,是否存在相同的需求?为什么没有Microsoft.Win64命名空间?
5
A
回答
12
默认情况下,.NET应用程序运行在以OS架构为目标的框架上。因此,如果您运行的是32位Windows,则该机器上安装的.NET框架将是32位框架。运行在此框架上的所有.NET应用程序都将以“32位”运行。
如果您运行的是64位Windows,那么您正在运行64位框架,但在框架顶部运行的IL与32位IL的IL没有区别(默认情况下)。
所以简而言之:如果你运行的是32位或64位Windows,那么这并不重要,因为.NET框架将它从C#/ VB代码中抽象出来。
Microsoft.Win32框架是指Windows内部的本地API。除了微软给出的真正糟糕的名字之外,它与32位和64位Windows没有任何关系。
顺便提一下,64位版本的框架不能完成一些事情:例如,64位框架中没有JET数据库驱动程序。
0
出于同样的原因,我们有64位二进制文件存储在64位Windows的system32
文件夹中。
基本上,这是因为Microsoft.Win32
中的内容不是特定于32位Windows的。为什么他们会损害便携性而没有任何好处?
1
“Win32”是平台的名称(即核心API集合),而不管OS的实际位数。换句话说,不要担心:)
相关问题
- 1. 没有名为命名空间“STD” make_unique'
- 2. 为什么我没有命名空间在Visual Studio中/ XAML
- 3. 为什么Razor没有看到包含的命名空间?
- 4. 为什么ANSI C没有命名空间?
- 5. ::没有命名空间
- 6. XElement.Descendants没有命名空间
- 7. 没有命名空间
- 8. 没有命名空间
- 9. 没有命名空间
- 10. 命名空间名称空间控制器还有什么?
- 11. 没有命名空间的Groovy XMLSlurper命名空间错误
- 12. 命名空间点命名空间和嵌套命名空间有什么区别?
- 13. 为什么用户名没有空格?
- 14. 为什么有些升压功能不需要命名空间
- 15. 为什么有URL的XAML命名空间?
- 16. 为什么我无法访问没有命名空间的xml节点?
- 17. XMLOutputStream,修复名称空间和属性没有命名空间
- 18. 什么是MapRoute命名空间参数?
- 19. testng.xml的命名空间是什么?
- 20. 命名空间会发生什么?
- 21. 什么是OpenCV HighGUI命名空间?
- 22. 什么是VJSharp命名空间?
- 23. IMvcServiceLocator的命名空间是什么?
- 24. 命名空间是什么?用法呢?
- 25. 什么是ksoap命名空间?
- 26. 什么是CreateIfNotExists的命名空间?
- 27. 合同名称空间 - 没有冲突,为什么?
- 28. ResizeStop没有命名空间污染
- 29. OxyPlot CandleStickAndVolumeSeries命名空间没有找到
- 30. 没有命名空间的WSDL定义
很好的答案!有没有人跟踪.NET中的64位差异? ---也许是博客? – rasx 2009-06-12 20:36:10