2011-11-17 68 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。