大家好,欢迎来到IT知识分享网。
在编写程序的时候我们会遇到输出程序集(dll)的位数问题,如果输出程序集的位数(目标平台)和主程序的目标平台不一致的话,就会报错,可能会报找不到该dll的错误。
接下来是本人的理解,有不不正确的还望看到的人能够给一些修改意见。
在Vistual studioi里面主要有以下两个不同的平台:
1.解决方案平台:X86、X64、AnyCpu等等;
2.目标平台:X86、X64、Win32等;
C#
C++
其中解决方案平台决定你输出程序的目录,例如X86的话就是..\bin\x86\debug等。而目标平台则是决定输出程序集的位数。
比如dll的输出目标平台是Win32的,那么当主程序的目标平台是X64的,那么在引用该dll的时候就会报错;相同的,当dll的输出目标平台(项目上下文)是X64的,当主程序的目标平台是X86的,在引用的时候也会报错。
并且如果是dll引用dll,则这两个dll的项目上下文平台要一致。
注释:主程序是X86(目标平台)的可以引用win32的程序集;主程序是X64的可以引用X64的程序集;主程序是AnyCpu的,当在X64系统上运行时,那么他就是X64的,只能引用X64的程序集,当在32位系统上运行时,那么他就是X86的程序集可以引用X86和Win32的程序集。
总之,在输出程序的时候主要的要看目标平台也即程序的输出位数。
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/154400.html