如何从 .csproj 文件知道 DLL 的完整路径?

发布于 2024-08-21 01:33:38 字数 576 浏览 5 评论 0原文

我想知道是否有某种方法可以知道 .csproj 文件中列出的 dll 的完整路径。

对我来说最有趣的是解析默认 dll 的路径,如 System.Xml.dll、System.Data.dll 等。

在 .csproj 文件中,只有短名称的行:

<Reference Include="System.Xml.Linq">
  <RequiredTargetFramework>3.5</RequiredTargetFramework>
</Reference>
<Reference Include="System.Data.DataSetExtensions">
  <RequiredTargetFramework>3.5</RequiredTargetFramework>
</Reference>
<Reference Include="System.Data" />
<Reference Include="System.Xml" />

我应该查看 $PATH 变量并尝试解析给定的 dll 名称?或者什么?

I wonder if there is some way to know full paths to the dll's that are listed in .csproj file.

The most interesting for me is to resolve paths to default dll's like System.Xml.dll, System.Data.dll and etc.

In the .csproj file there are only lines with short names:

<Reference Include="System.Xml.Linq">
  <RequiredTargetFramework>3.5</RequiredTargetFramework>
</Reference>
<Reference Include="System.Data.DataSetExtensions">
  <RequiredTargetFramework>3.5</RequiredTargetFramework>
</Reference>
<Reference Include="System.Data" />
<Reference Include="System.Xml" />

Should I look to the $PATH variable and try to resolve given dll's name ? Or what ?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

幽梦紫曦~ 2024-08-28 01:33:38

您要检查的第一个地方是 GAC。如果引用不在 GAC 中,则大多数情况下引用下方会有一个相对或绝对路径,如下所示:

<Reference Include="mydll">
  <HintPath>..\..\mydll.dll</HintPath>
</Reference

The first place you would check is the GAC. If the reference is not in the GAC, then most often there will be a relative or absolute path below the Reference like this:

<Reference Include="mydll">
  <HintPath>..\..\mydll.dll</HintPath>
</Reference
寂寞花火° 2024-08-28 01:33:38

如果它是像您的示例一样的任何 .NET 库,那么它们通常位于以下文件夹中:C:\Windows\Microsoft.NET\Framework\< .net 版本 >\ 或 GAC 中指定的任何内容。否则会有一个 HintPath,它将是当前文件夹的相对路径。

If its any .NET library like you examples then they will generally be in the following folder: C:\Windows\Microsoft.NET\Framework\< .net version >\ or whaterver is specified in the GAC. Otherwise there will be a HintPath which will be a relative path to your current folder.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文