2016-04-11 2 views
0

私はVisual Studioで開発しているC#アプリケーションを持っています。私は本当にインストールが簡単だったNuGetを使用しています。 Newtonsoft JSON私は窓の開発に新しいので、ちょっとした質問がありました。C#NuGetsインストール

私はあなたのプロジェクトで何かを使用することを知っていますので、あなたのインストーラにdllまたはlibを追加して、プロジェクトがそのライブラリを使用するようにする必要があります。これはNuGetの場合と同じですか?インストーラにNewtonsoft JSONを追加する必要がありますか?

私はVisual Studio 2015を使用しています。

+3

インストーラは、アセンブリが含まれていることを確認する必要があります。しかし、そこに多くのインストーラがあります。あなたは何を使っていますか? –

+0

インストールします。ですから、そのナゲットを追加するためにInstallsheildにいくつかの設定をする必要がありますか?またはそれが生成するdll/lib – KotaBear233

+0

私は小さな運が私のプロジェクトにDLLを追加するためのチュートリアルをいくつか調べた。私が見つけたすべてのチュートリアルはとても古いものです。これに関する提案はありますか? – KotaBear233

答えて

1

コメントしていますが、まだできません。

一般に、Nugetを使用してプロジェクトにパッケージを追加すると、すべての必要な参照が処理されます。

また、プロジェクトの参照リストを見て問題のアセンブリ(この場合はNewtonsoft.JSON)を右クリックし、そのプロパティに移動すると、「ローカルコピー」オプションが表示されます。

これがtrueに設定されている場合、説明が示すように、「参照は出力ディレクトリにコピーされます」。

したがって、.exe/.dll/libが出力される場所には、そこにもNewtonsoft.JSONのコピーが必要です。

編集:

あなたの質問は、私が言うことができる最高はあなたがNugetを介してパッケージを追加した場合、それはアプリケーションに組み込まれてされないことは非常に混乱しているように、それはまだ別のDLLになります含まれているファイルのインストーラリストにDOESを含める必要があります。

+0

右ですが、OPはアプリケーションのコンパイルだけでなく、*インストーラ*についても話しています。 –

+1

これは一般的には無関係です。彼がプロジェクトの出力がインストーラにあるものを何も入れていないなら、彼はそこに何を入れていますか?インストーラがプロジェクトの出力をファイルリストとして使用していると仮定すると、このプロパティをtrueにすると、問題のDLLのコピーがそのディレクトリに確実に格納されます。 – pay

+1

インストーラについての質問は* all *です。おそらくOPは彼のアプリを実行することができます。したがって、アセンブリはおそらくアプリケーションをローカルで実行する必要がある場所です。インストーラは*全く別の話ですが、OPの質問の要点です。 –

-1

これは、使用するインストーラによって異なります。フォルダーを選択できるものもあれば、自動的に検出するものもあれば、そうでないものもあります。

0

あなたはinstallshieldプロジェクトにnugetパッケージをインストールする必要はありません。 依存関係にプロジェクトをインストールする際に参照を含める必要があります。