質問: それは私にはっきりと分かりませんので、ここの誰かが答えを知りたいと思っています。私はC#Json.NetとC#HtmlAgilityPackの両方を "Any CPU"のソースからビルドして使用しています。私は、これらの両方に、メトロでは利用できないと思われるアセンブリを参照するディレクティブを使用することが含まれていますが、どちらもうまく構築されていることに気付きました。 私がそれらを参照すると、これは私のアプリがアンマネージドコードを鳴らすことを意味するのでしょうか? 何が原因でコードが壊れてしまうのですか? WinRTと私のアプリケーションで利用できないアセンブリをDLLが参照できるのはなぜですか? これは、Windowsストア承認プロセスに失敗しますか? 私が心配する必要がある私のアプリケーションに含めるDLLの一般的なルールは何ですか? 前もって感謝します!
回答: WinRTを対象とするアプリケーションを開発する場合、アプリケーションはWindows 8 WinRTで使用可能なAPIのみを使用する必要があります。 APIはWinMDファイルで定義されています。アプリがデスクトップAPIを使用していた場合、Windowsストア承認プロセス中に拒否されます。 この場面を想像してみてください。デスクトップモード(クライアントプロファイル)からの.NET DLLを使用するWinRTアプリケーションを開発しました。このアプリはWindowsストアにデプロイされ、ユーザーはARMタブレットにダウンロードします。 ARMデバイスにデスクトップ(クライアント).NET DLLがないため、アプリケーションがクラッシュします。 このため、WinRT用のアプリケーションを開発する際に使用できる.NETクラスについて質問があります。記事利用可能な.NETクラスの一覧WinRTアプリケーション開発用。