我明白,我們可以在C#編寫的Metro風格應用訪問.NET API和所有的WinRT API的一部分。 但是,如果其他第三方組件的目標.net 2.0或3.5等 我們能夠將它們作爲引用添加到metro風格的應用程序項目中嗎?使用傳統組件
使用傳統組件
回答
是,有時你可以從地鐵應用程序引用第三方.NET程序集。它們應該部署在與您的應用程序相同的文件夾中,並且只使用受支持的API。
我創建了一個.NET庫,一類和Metro應用中使用它。得到以下警告:The project 'EmptyLib' cannot be referenced.
但是,該應用程序已經建成,我能夠調試它,並在調試器中探索我的類的實例。
然後我試圖通過Windows應用程序認證。它失敗了(見下面的細節)。
接通編譯器優化爲傳遞應用認證後。
它第一次失敗的原因是該庫使用不支持的API。詳細信息:
錯誤:此應用程序未能通過支持的API檢查。在MSCORLIB
API System.Runtime.CompilerServices.CompilationRelaxationsAttribute公鑰= B77A5C561934E089不支持此應用程序類型。 EmptyLib.dll調用這個API。
API System.Runtime.CompilerServices.CompilationRelaxationsAttribute。#ctor(System.Int32)in MSCORLIB,PUBLICKEYTOKEN = B77A5C561934E089不適用於此應用程序類型。 EmptyLib.dll調用這個API。
影響如果不是固定的:應用程序正在使用一個或多個不在Windows SDK中用於Metro風格應用程序的API。使用不受支持的API違反了Windows Store策略,並可能對用戶體驗產生負面影響,並有可能阻礙整體系統的穩定性。
如何解決:在看短信above2對於需要修復的確切API錯誤。有關支持的API列表,請參閱適用於Metro風格應用程序的Windows SDK。
- 1. 傳統組件和Firefox 11
- 2. 使用傳統的ASP發送郵件?
- 3. 使用H.323測試傳統語音郵件系統
- 4. 傳統的ASP:FileSystemObject的使用
- 5. 使用傳統的ASP
- 6. CFFILE - 使用組件上傳文件
- 7. 如何使用AngularJs像傳統的方式上傳文件
- 8. 如何將參數從傳統ASP傳遞到com組件
- 9. 使用文件系統顯示使用collectionfs上傳的圖像
- 10. REDHAWK Python組件調用傳統的C代碼
- 11. 如何在傳統的PHP項目中使用symfony2驗證器組件?
- 12. 什麼時候使用傳統的循環數組助手
- 13. 使用API REST通過文件系統上傳的文件
- 14. 客戶端文件上傳使用cfs文件系統
- 15. 使用索引數組上傳文件
- 16. 在角度組件中使用傳單
- 17. 在Angular 1.5組件中使用傳單?
- 18. 文件上傳使用組塊:Jmeter
- 19. AngularJS組件:使用=傳遞參數
- 20. 用阿拉伯語保存文件名使用傳統的asp
- 21. 如何使用firefox addon sdk從用戶系統上傳文件?
- 22. PHP文件上傳系統
- 23. 文件上傳系統
- 24. 使用JSR-303和傳統Bean驗證?
- 25. 傳統ASP使用VS 2012/2013預覽
- 26. 使用系統命令傳遞參數
- 27. 如何使用傳統的ASP
- 28. 在傳統asp中使用sp_helptext
- 29. 使用Ninject綁定傳統類型
- 30. Xcode 8.2使用傳統的Swift問題
如果庫作者希望他們的圖書館是臺式機和地鐵上使用,就應該使用「便攜式圖書館」項目,以確保它們只能使用普遍支持的API。 –
參見http://msdn.microsoft.com/en-us/library/windows/apps/br230301(v=VS.85).aspx#KnowTheRules –