2016-10-07 15 views
0

(私はこの正確な組み合わせSO上のいくつかの他の同様の質問を参照してくださいすることはできませんが、)の参照C++ UWPプロジェクト

?私はUWP(C#)とWinFormsの(.NET 4.5)のプロジェクトを試してみましたが、それらの両方が言っフリークアウト:

'[C++プロジェクト名]' への参照を追加することができませんでした。

答えて

0

UWP(C++)プロジェクトの意味によって、あなたは傾けることができます。 UWP C++プロジェクトは.Netを使用しないため、.Netアセンブリは生成されません。

Windows Runtime Component(WRC)をC++で作成し、それをUWP C#(またはJavaScript)プロジェクトで追加できますが、WinFormsプロジェクトでは追加できません。それはC#のアプリ内に突出して、他のC#クラスのような呼び出し可能になりますWRCで定義されたクラスを参照しています一度

Walkthrough: Creating a basic Windows Runtime component in C++ and calling it from JavaScript or C#

を参照してください。

また、C++ DLLを作成してプロジェクトに組み込み、UWPまたはWinFormsアプリケーションからp-invokeすることもできます。このシナリオでは、自動配線はありません。ピンボーク定義などを自分で記述する必要があります。

+0

OK。おそらくWinFormsには意味がありますが、なぜC++(UWP)プロジェクトのリファレンスをC#(UWP)に追加できないのですか?彼らはどちらも同じ言語で話すべきです、いいえ? – dotNET

+0

C#とC++は異なる言語です。 C#は.Netを使用します。 C++はそうではありません。それらを一緒に使用するには、interopレイヤーが必要です:pinvokeまたはwinmd(WRC)。リファレンスを追加するには.NetとWinmdsではなく、標準のC++ DLLは理解できます。 –

+0

ありがとうございます。 WRCは大きなヒントでした。私はまだC++(ユニバーサル)プロジェクトについて少し混乱しています。私の理解は、C++(ユニバーサル)はC#(ユニバーサル)とVB.NET(ユニバーサル)プロジェクトに似ています。それはコード化するのが好きな言語の問題だったということです。 – dotNET

関連する問題