2013-03-21 24 views
7

在Windows 7窗體應用程序我寫了一個非常簡單的C#Windows Forms應用,和他的同事希望利用Parallels 8來測試它在Windows 7上,因爲他只擁有一臺Mac。運行C#中的Windows 8的Parallels錯誤

的問題是,當他開始它使用在debug文件夾中的EXE文件,他得到這個錯誤:

Error starting OMAPI (Unable to load DLL 'libomapi.dll': The specified module could not be found. (Exception from HRESULT: 0x8007007E)) Check the required .dll files are present the correct versions: OmApiNet.dll libomapi.dll

你可以從下面的圖片看到,所需的DLL文件都在那裏在同一個文件夾中,如果他將這個調試文件夾帶到Windows PC上,它就可以正常工作,所以它絕對是某種虛擬機或Parallels特有的問題。

Screenshot of error

我怎樣才能解決這個問題?

我還沒有真正使用足夠了解的問題可能是什麼虛擬機...

+4

可執行文件和庫的格式是什麼?鑑於它在同一個文件夾中,它應該找到它,所以我想知道它是否是一個糟糕的格式問題(32位與64位)? – Lloyd 2013-03-21 18:01:54

+2

你也可能會發現它是一個外部依賴問題,在你的其他設置上並不存在你的並行設置,嘗試使用Dependency Walker - http://www.dependencywalker.com/ – Lloyd 2013-03-21 18:06:00

+7

我見過一些有趣的東西如果項目是針對AnyCPU編譯的,但依賴庫是x86並且目標操作系統是x64,則會發生。 – 2013-03-21 18:06:14

回答

0

它很有趣,在其上運行ProcMon,看看它真的這樣做,試圖找到這些文件。

0

這可能是更多的網絡驅動器問題。讓他從Y:驅動器(從他的Mac共享)將該文件夾複製到C:驅動器並從那裏再次運行。

0

它看起來像你試圖從網絡共享運行應用程序,其中.NET平臺禁止作爲其安全風險。嘗試將文件複製到虛擬機上的其他位置,例如C:\ Temp。

相關問題