雑記 |
Visual Basic 中学校 > 雑記 >
2020/9/28
この記事が対象とする製品・バージョン
![]() |
Visual Studio 2019 | ◎ | 対象です。 |
![]() |
Visual Studio 2017 | ◎ | 対象です。 |
![]() |
Visual Studio 2015 | ○ | 対象ですが、画面や操作が異なる場合があります。 |
![]() |
Visual Studio 2013 | ○ | 対象ですが、画面や操作が異なる場合があります。 |
![]() |
Visual Studio 2012 | △ | 対象外ですが、同じような意味の操作なので参考になります。 |
![]() |
Visual Studio 2010 | × | 対象外です。 |
![]() |
Visual Studio 2008 | × | 対象外です。 |
![]() |
Visual Studio 2005 | × | 対象外です。 |
![]() |
Visual Studio 2003 | × | 対象外です。 |
![]() |
Visual Studio (2002) | × | 対象外です。 |
目次
Install-Package というコマンドを使ってインストールしたい場合は、2.Install-PackageコマンドでNuGetパッケージをインストールする手順 を参照してください。
コマンド例:
PM> Install-Package System.Drawing.Common -Version 5.0.0-rc.1.20451.14
ヒント: nuget.org が存在しない場合 → 困った場合 困った3.nuget.org がない
ヒント:パッケージ名の一部や、欲しい機能を入力します。
ヒント:説明文・作成者・公開日が良く見る項目です。正式に使用する場合は、ライセンスを確認してください。使用条件が付いている場合があります。
ヒント:選択したパッケージが他のパッケージに依存している場合、その他のパッケージもインストールされます。この変更のプレビューで実際にインストールされるものを確認できます。
以上
コマンドがわからない場合は、1.Visual Studio の画面からNuGetでパッケージをインストールする手順 を参照してください。
コマンド例:
PM> Install-Package System.Drawing.Common -Version 5.0.0-rc.1.20451.14
コマンドの例
Install-Package System.Drawing.Common -Version 5.0.0-rc.1.20451.14
以上
会社のような組織では、インターネットに接続するためにプロキシーサーバーを利用している場合があります。この場合、設定によってはVisual StudioからNuGetに接続できません。
プロキシーサーバーを使用しているかどうかは、Windowsの場合、 Windowsキー+Rキー を押して、「ファイル名を指定して実行」を開き、「rundll32.exe shell32.dll,Control_RunDLL inetcpl.cpl,,4」を実行します。インターネットオプションの接続タブが開きます。
※要するに、インターネットオプションの接続タブを開いているだけですが、この説明で通用しない人のために文字で一番説明しやすい記述をしました。(かえってわかりにくかったらすいません。)
ここで「LANの設定」をクリックします。ここで自動構成スクリプトが指定されているか、プロキシーサーバー欄にチェックが付いている場合は、プロキシーサーバーが使われています。
プロキシーサーバーを使用しているネットワークで、NuGetでの検索ができない場合、NuGet.configファイルでプロキシーを設定すると接続できるようになるかもしれません。
参考:NuGet.configでのプロキシー設定
https://docs.microsoft.com/ja-jp/nuget/reference/nuget-config-file
別の方法としてVisual Studioにプロキシーサーバー設定することで接続できるようになるかもしれません。
これはVisual Studioの実行ファイルであるdevenv.exeの設定ファイル、つまり、devenv.exe.configにプロキシー設定を書き込むことで実現できます。このファイルはdevenv.exeを同じフォルダー内にあります。このファイルのsystem.net要素に次のようなdefaultProxy要素を書き込めば完了です。
<system.net> <defaultProxy useDefaultCredentials="true" enabled="true"> <proxy usesystemdefault="true" /> </defaultProxy> ★もともとある記述は削除しないでこの位置に残しておいてください。 </system.net> |
自動構成スクリプト(PAC=proxy auto config)を使っている組織では、usesystemdefault="true"の代わりに、scriptLocation="自動構成スクリプトのパス" を記述すれば良さそうです。
参考:Visual Studio のプロキシー設定
NuGetの通信先はVisual Studioに設定されています。
[ツール]メニューの[オプション]から [NuGet パッケージマネージャー] - [パッケージソース] をクリックして、nuget.org のURLを確認しましょう。https://www.nuget.org/api/v2/ または https://api.nuget.org/v3/index.json になっているはずです。そして WebブラウザーでそのURLにアクセスしてみてください。なにやらXMLが表示されれば通信できています。この場合はアドバイス1を参考にしてください。通信できない場合は、そもそもインターネットに接続できていない場合や、何かネットワークの設定でそのサイトにアクセスできない状態になっています。ネットワークの問題を解決する必要があります。
Windowsで「何かインストールする」といわれると、「良くわからないものはインストールしたくない」、「他のアプリケーションやプログラムに影響が出るかもしれないから嫌だ」と思うかもしれません。
しかし、紛らわしいのですが、NuGetの「インストール」は通常のWindowsのインストールのことではないのです。
NuGetのインストールで影響を受けるのは、VBまたはC#で作成している対象のプロジェクト・ソリューションだけです。他のプロジェクトには一切影響しませんし、ましてやWindowsの他のアプリケーションにも影響しません。
だからばんばんインストールして大丈夫です。わけがわからなくなったらそのソリューションやプロジェクトはもう開かないことにして、新しいソリューションやプロジェクトを作成するとまたゼロから開始できます。(もちろん、プロジェクトからパッケージをアンインストールすることもできます。)
誤解する人が多いので「インストール」という言葉を使わないで欲しいものです。「プロジェクトに追加」くらいのメニューにしておいてもらえれば誰も心配しないと思うのですけど。
nuget.org を登録する手順。
[ツール]メニューの[オプション]から [NuGet パッケージマネージャー] - [パッケージソース] をクリック。パッケージソースの + ボタンを押す。名前がPackage Source 、ソースが http://packagesource の項目が自動的に追加されるので、これを次のように修正する。名前 nuget.org、ソース https://www.nuget.org/api/v2/ 。そして OK をクリック。
※より新しいURLは https://api.nuget.org/v3/index.json かもしれません。うまくいかなければ両方試して見ましょう。
インターネットにつなげられない環境のVisual StudioでNuGetのパッケージをインストールするには、別のインターネットにつなげられるパソコンでブラウザーを使ってパッケージをダウンロードし、フォルダーに格納します。Visual Studioはこのフォルダーからパッケージをインストールすることができます。
パッケージをダウンロードしてフォルダーに格納するには、https://www.nuget.org/ で目的のパーケージのページに行き、右上の方にある Download pacakge というリンクをクリックします。そのパッケージがローカルにファイルとしてダウンロードされるので、それをフォルダーに格納します。
フォルダーからパッケージをインストールするには、[ツール]メニューの[オプション]から [NuGet パッケージマネージャー] - [パッケージソース] をクリックして、パッケージソースの + ボタンを押します。名前がPackage Source 、ソースが http://packagesource の項目が自動的に追加されるので、これを次のように修正します。名前 folder (名前は自由です)、ソース その目的のフォルダーのパス。たとえば、\\shared\folder または C:\localfolder\nuget など。 そして OK をクリック。後は、NuGetのパッケージを検索するときに、nuget.org の代わりにここで追加したソースを選択します。
参考:NuGet.orgが使えなくてもNuGetにアクセスする方法 (つまり、飛行機の中にいる場合) (英語)
https://www.hanselman.com/blog/HowToAccessNuGetWhenNuGetorgIsDownOrYoureOnAPlane.aspx
ソリューションエクスプローラーで依存関係 - パッケージを展開することで確認できます。(環境によってはこの方法では確認できません。)
もう1つの方法は、プロジェクトを右クリックして、[NuGetパッケージの管理]をクリックして開く画面で、「インストール済みのパッケージ」をクリックする方法です。
インストールコマンドは Install-Package ・・・・・ という形式です。インストールコマンドを調べるには Webブラウザーで https://www.nuget.org/ にアクセスし、対象のパッケージを検索して、Package Manager欄の記載を見ます。
https://docs.microsoft.com/ja-jp/nuget/consume-packages/install-use-packages-visual-studio
Visual Studioの画面操作でNuGetのパッケージをインストール・アンインストール・更新・管理等する方法を画像つきでわかりやすく解説しています。
https://docs.microsoft.com/ja-jp/nuget/consume-packages/install-use-packages-powershell
install-packageコマンドなどを使用するパッケージマネージャーコンソールの説明です。
https://docs.microsoft.com/ja-jp/nuget/what-is-nuget
NuGetの目的や仕組みを詳しく解説しています。
NuGetの全パッケージを検索できます。