[英]EntryPointNotFoundException in advapi32.dll while starting application
我在Windows 7 x64 SP1上的Visual Studio 2013 Update 5中開發WPF應用程序。 啟動程序后,通過http下載xml文件並解析它。 所有工作都很好,直到今天,問題是異常突然發生,項目沒有重大變化,沒有添加新的參考。
現在,當啟動程序時拋出System.Windows.Markup.XamlParseException
並顯示消息“方法或操作未實現” ,它甚至在InitializeComponent()
之前就出現了,所以我的代碼沒有執行任何一行。 然后我查看了Visual Studio中的IntelliTrace窗口,發現了一系列異常,其中最重要的是System.EntryPointNotFoundException
,消息“無法在DLL中找到名為'EventSetInformation'的入口點'advapi32.dll'” 。
搜索給我這個和這個說話卻EventSetInformation
是Windows 8+只。 所以Windows 7缺少這個方法,這里是例外,但是我的程序如何引用這個方法,而它(程序)與Windows 8無關, 而不是一點點 ? 我還可以假設Visual Studio中有一些與Update-5相關的組件可以觸發這個advapi32方法,但如果是這樣 - 我該如何禁用此功能?
編輯
使用.NET 4.5編程
例外信息:
System.Windows.Markup.XamlParseException occurred
Message=The method or operation is not implemented.
Source=PresentationFramework
StackTrace:
in System.Windows.Markup.WpfXamlLoader.Load(XamlReader xamlReader, IXamlObjectWriterFactory writerFactory, Boolean skipJournaledProperties, Object rootObject, XamlObjectWriterSettings settings, Uri baseUri)
EDIT2
史蒂夫和漢斯在評論中注意到,實際問題最終與advapi32庫無關 。 我有一個從Window
派生的WindowEx
類,帶有一些自定義的東西,我的可視窗口來自這個WindowEx
。 也許我的自定義類錯過了一些方法(如果要相信異常消息),但在將基類切換回Window
並將自定義邏輯從WindowEx
直接放到可視窗口后,錯誤就消失了。
為了完整這個問題,這里是問題的最后編輯副本的答案:
史蒂夫和漢斯在評論中注意到, 實際問題最終與advapi32庫無關 。 我有一個從Window
派生的WindowEx
類,帶有一些自定義的東西,我的可視窗口來自這個WindowEx
。 也許我的自定義類錯過了一些方法(如果要相信異常消息),但在將基類切換回Window
並將自定義邏輯從WindowEx
直接放到可視窗口代碼后,錯誤就消失了。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.