我有一个在VS 2003中开发的旧vb应用程序。我将其仔细升级到vs2015。此应用程序使用一些COM库。当我尝试构建应用程序时,出现错误:
Severity Code Description Project File Line Suppression State
Error BC30002 Type 'AxMSForms.AxImage' is not defined
我发现某个名为AxMSForms.dll的dll引起了此问题。在哪里获取这些COM库文件。
随时问问题是否明确。
答案 0 :(得分:1)
当您将对ActiveX Ax.....dll
文件的引用添加到VB.NET(或C#)项目中时,我很确定Visual Studio会自动创建OCX
文件。
您应该尝试从项目中删除然后重新添加对OCX的引用。这可能会使Visual Studio重建包装DLL。过去对我有用。
说明:
ActiveX控件始终(?)打包在OCX
文件中,该文件只是COM DLL的一种,因此使用COM对象表示其提供的控件。
.NET代码不能直接利用COM对象,因此dev工具将创建包装器类,以便为您提供对它们的访问。 OCX DLL是一种特殊情况,因为Visual Studio不仅将提供COM包装,而且ALSO将提供将ActiveX控件映射到Windows Forms控件的包装。这就是丢失的AX DLL可能包含的内容。