我已經構建了一個WinRT組件(.winmd)供JavaScript和XAML Windows Store應用程序使用。當在JavaScript客戶端中包含並引用鬆散的.winmd文件輸出時,我看到此構建警告:如何打包Windows運行時組件以進行分發?
Microsoft.AppXPackage.Targets(808,9):警告APPX1707:沒有爲.winmd文件提供實現文件'myRuntimeComponent.winmd'。要在應用清單中生成註冊信息,請在項目文件的.winmd引用項目中指定'Implementation'元數據。
我找不到有關此錯誤的任何文檔或如何包含實現元數據。
當運行JavaScript客戶端,這個異常被拋出時,從.winmd出口類方法被稱爲:
0x80040154的 - 的JavaScript運行時錯誤:沒有註冊類
請注意,我引用客戶端應用程序項目中的鬆散.winmd文件,而不是引用構建.winmd的Visual Studio項目。我的用例是發佈.winmd輸出,而不是.winmd組件的完整源代碼 - 源代碼發佈不是一個選項。
另請注意,當Windows運行時組件被引用爲作爲項目引用時,JavaScript客戶端將生成並正確運行。 C#XAML客戶端可以正確運行,無論是項目引用還是對鬆散.winmd的引用。
當引用鬆散的.winmd時,似乎在客戶端應用程序構建中沒有生成某些註冊信息。
如何構建和分發一個鬆散的Windows運行時組件以供JavaScript和受管客戶端使用?
您需要的.dll文件從組件了。編譯組件時,它必須生成一個.winmd文件和一個.dll文件。 – kiewic
不幸的是,並非如此 - 沒有生成DLL。輸出文件包括.winmd,.pri和.pdb。 –
嘿傑西,你有沒有找到解決你的問題? –