2015-11-08 125 views
1

我在我的.NET 4 WinForms應用程序中使用託管擴展框架。在我的Windows 8上,在Hyper-V上全新安裝Windows XP SP3,在Windows 7上以及在Win 8.1下通常無處不在的情況下,一切正常。MEF不適用於Windows 8.1或更高版本的設備

該問題僅在Windows 8.1或更高版本中出現 - 沒有錯誤或異常,但沒有找到插件。 我沒有附加任何代碼,因爲我已經嘗試從MSDN運行MEF的官方示例應用程序,甚至無法在8.1(https://code.msdn.microsoft.com/windowsdesktop/Simple-Calculator-MEF-1152654e)上運行。主項目中定義的導出工作正常,但無法從DLL項目中找到導出。

我試過已經在幾臺計算機應用程序和結果都是一樣的 - 一切工作完全正常,只要它是在Windows 8.1 ...

有沒有在Windows 8.1,以防止裝載任何的bug DLL的MEF擴展......?

+0

我會在另一臺電腦上試用它。我們的進口(基於DLL)同時在Win 8.1和Win 10上工作。 – Dabblernl

+0

我已經在3臺電腦上試過了。 2與Win 8.1和1與Win 10,他們都不能正確運行MSDN示例... –

+0

我下載了示例並嘗試了它。這是工作。或許你一遍又一遍地犯了一些錯誤,但這並不符合你的智力正義:-)清理你的思想,明確說明並再試一次。 – Dabblernl

回答

4

找到原因 - 包含模操作的DLL默認被系統阻止,用戶需要手動解鎖才能使其工作。

這將是很好,如果視窗至少注意到用戶在某種程度上,它阻止了文件中的一個,甚至要求它的用戶...

無論如何,後手動解鎖的DLL文件,一切工作正常:

screenshot of "unblock" option in Windows 8.1+

+0

你是我的救星! –

相關問題