C/C++ で記述されたオープンソース ライブラリ ( Linphone )を使用して、Windows 8 / Windows Phone 8 用のアプリケーション (C#) を作成しようとしています。VS11にインポートしようとしましたが、成功しませんでした。必要なすべての .dll ファイルがあります。
VS11 の有無にかかわらず、このライブラリを使用してアプリを作成する方法はありますか?
ありがとう。
C/C++ で記述されたオープンソース ライブラリ ( Linphone )を使用して、Windows 8 / Windows Phone 8 用のアプリケーション (C#) を作成しようとしています。VS11にインポートしようとしましたが、成功しませんでした。必要なすべての .dll ファイルがあります。
VS11 の有無にかかわらず、このライブラリを使用してアプリを作成する方法はありますか?
ありがとう。
古いバージョンの Visual Studio (Visual Studio 2012 より古い) を使用してビルドされたバイナリは、Windows 8 ストア アプリでは使用できません。
その理由は、たとえば Visual Studio 2010 を使用してビルドされたバイナリは、Visual Studio 2010 の C++ ランタイム DLL に依存するためです。一方、アプリの残りの部分は Visual Studio 2012 を使用して記述されているため、C++ ランタイム DLL に依存します。 Visual Studio 2012 から。後者は、Windows ストアから自動的に利用可能になります (詳細については、こちらをお読みください)。ただし、前者は Windows ストアでは入手できません。また、アプリが VC2010 ランタイムへの依存関係を表現する方法はありません。アプリ パッケージ内に VC2010 ランタイム DLL を含めても、ストア アップロード時にパッケージが拒否されるため、機能しません。
したがって、最適なオプションは、Visual Studio 2012 を厳密に使用して、Windows 8 ストア アプリのすべてのソースをビルドすることです。
管理されていない dll を「インポート」しません。代わりに、PINvoke を使用してメソッドを呼び出します。
これを参照してください: