Csharp/C#教程:在另一个c#winform中添加c#windows exe作为参考是否正确?分享


在另一个c#winform中添加c#windows exe作为参考是否正确?

我有c#winform应用程序。 我可以在另一个winform应用程序中添加此exe作为参考。

它像dll类型一样工作得很好。

截至目前,我没有看到任何问题。 在这种情况下我是否需要考虑任何问题。

是的,这很好。 CLR实际上并不关心文件扩展名,添加引用时IDE也不关心。

CLR知道的所有内容都是程序集的显示名称 。 换句话说,当它被要求寻找一个组件时,它首先按全名。 例如:

ClassLibrary1, Version=1.2.3.4, Culture=neutral, PublicKeyToken=b77a5c561934e089 

它首先在GAC中查找显示名称(ClassLibrary1),版本和令牌的完全匹配。 如果做不到这一点,它会在程序的探测路径中寻找文件。 只是“ClassLibrary1”。 请注意,根本没有指定文件扩展名。 它将首先尝试查找“ClassLibrary1.EXE”。 如果失败了,它接下来会尝试找到“ClassLibrary1.DLL”。没有尝试进一步的扩展。你可以看到这是用Fuslogvw.exe btw完成的。

请注意,这种方法存在一个令人讨厌的问题,DLL不能与EXE具有相同的文件名。 当要求解析DLL程序集时,CLR将加载EXE。 那当然是kaboom。 一个难以发现的问题。 它首先寻找EXE而不是最后一个是奇怪的。

所以,没有什么可担心的。 只需将.exe重命名为.dll即可。

上述就是C#学习教程:在另一个c#winform中添加c#windows exe作为参考是否正确?分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/cdevelopment/1022388.html

(0)
上一篇 2022年1月7日
下一篇 2022年1月7日

精彩推荐