2011-11-17 81 views
0

当我在VS2010中使用COM参考时,它生成名为“Interop。*。dll”的文件,如果没有它,应用程序就无法工作。我们的发行系统非常陈旧,不允许超过8个符号的文件名(dos格式)。所以,我应该以某种方式重命名Interop。*文件,但我的应用程序总是试图找到这个Interop。*文件。我试图重命名它,添加到引用(删除COM引用)。它的工作原理,但只有原始的Interop文件。来自Interop。*文件的短文件名

我发现one solution,但我想找到更简单的方法,只需正确地重命名Interop。*文件。

错误消息:

未处理的异常:System.IO.FileNotFoundException:未能加载文件或程序集 'Interop.RDO,版本= 2.0.0.0,文化=中性公钥=空' 或之一它的依赖关系。系统无法找到文件specified.File名:“Interop.RDO,版本= 2.0.0.0,文化=中立,公钥=空”

+0

很不清楚重命名文件可能导致的挂断。你可以用tlbimp.exe/out命令行参数明确地命名它。 –

回答

1

正如微软documentation for the tlbimp util说,你可以指定文件名你想为特定的COM组件生成。

使用正确的名称生成互操作文件后,应直接在VS2010项目中引用它们,而不是引用COM组件。这应该防止Visual Studio为您的项目创建新的interop。