なぜ NUPKG を DLL に変換するのですか?
.nupkg は、プリコンパイルされた .NET アセンブリを含む ZIP ベースのアーカイブです。手動でのプロジェクト参照、オフライン展開、または完全な NuGet リストアを実行せずに中身を検査する場合に、生の .dll が必要になることがあります。
NUPKG から DLL への変換方法
7-Zip OPEN-SOURCE
.nupkg を右クリックし、「7-Zip > アーカイブを開く」を選択して lib/<framework>/ に移動し、.dll を選択して展開先のフォルダに「展開」します。
.zip にリネーム FREE
.nupkg の拡張子を .zip に変更し、Windows エクスプローラーで開き、lib/<framework>/ から .dll をドラッグして取り出します。
NuGet Package Explorer OPEN-SOURCE
「File > Open」から .nupkg を開き、lib とターゲットフレームワークのサブフォルダを展開して、.dll を右クリックし「Save As」を選択します。
これらの形式について
.nupkg ファイルは NuGet パッケージであり、.NET エコシステムで .NET ライブラリを配布するための標準的な形式です。これは、コンパイル済みの .dll ファイルと .nuspec メタデータ マニフェストを保持する ZIP アーカイブです。手動で開くことはほとんどありません。Visual Studio や «dotnet add package»…
.NUPKG の詳細を開く →DLL(Dynamic Link Library)は、プログラムの実行中にロードされるコンパイル済みコードを保持する Windows のライブラリファイルです。ダブルクリックして開くものではありません。アプリが DLL の欠落を報告した場合は、ランダムなサイトからファイルをダウンロードするのではなく、そのアプリを再インストールするか、Microsoft Visual C++…
.DLL の詳細を開く →品質と注意点
lib/フォルダには、ターゲットフレームワーク(例:net8.0、netstandard2.0、net472)ごとの個別の DLL ビルドが含まれています。実行時エラーを避けるため、プロジェクトに一致するものを選んでください。- 抽出された DLL はコンパイル済みのアセンブリのみであり、ソースコードやデバッグシンボルは含まれません。これらは別の
.snupkgシンボルパッケージで提供されます。 - 抽出した DLL を直接参照すると、NuGet のバージョン管理や推移的依存関係がバイパスされます。通常のプロジェクト統合には
dotnet add packageを使用してください。
よくある質問
どの `lib/` サブフォルダを使用すべきですか?
net8.0、クロスプラットフォーム互換ライブラリなら netstandard2.0、.NET Framework プロジェクトなら net472 です。`.nupkg` 内の DLL は NuGet がリストアするものと同じですか?
`.nupkg` にはソースコードが含まれていますか?
.snupkg ファイルにあります。