标签: dll-reference

Visual Studio继续使用UnitTestFramework 10.0.0.0

我已经有了几个项目的解决方案.其中一个项目包括用于单元测试的附加Assert方法.它引用了Microsoft.VisualStudio.QualityTools.UnitTestFramework 10.1.0.0.它还包括其他测试项目,它们引用Microsoft的UnitTestFramework和我的项目以及其他断言方法.

每当我重新启动visual studio并编译时,我都会收到以下警告:

发现同一依赖程序集的不同版本之间存在冲突.

我已经尝试将对UnitTestFramework的所有引用更改为10.1.0.0,但重新启动Visual Studio时似乎再次将它们设置为10.0.0.0.我甚至尝试在Visual Studio之外更改项目文件,但在Visual Studio中打开项目后,引用再次显示解决方案资源管理器中的旧版本.关闭Visual Studio而不进行任何文件修改时,它会询问是否保存对项目文件的更改.

如何防止Visual Studio在我的项目中更改引用的UnitTestFramework的版本?

unit-testing visual-studio dll-reference

11
推荐指数
1
解决办法
2945
查看次数

Wininet InternetGetCookie获取空cookie数据

我目前正致力于使用Csharp获取cookie数据.我正在使用DLLImport在wininet.dll中调用InternetGetCookie,但是当我尝试它时,函数返回ERROR_INSUFFICIENT_BUFFER(错误代码122).

谁能帮我这个 ?

这是Dll参考的代码:

[DllImport("wininet.dll", SetLastError = true, CharSet = CharSet.Auto, EntryPoint="InternetGetCookie")]
        public static extern bool InternetGetCookie(string lpszUrl, string lpszCookieName,
            ref StringBuilder lpszCookieData, ref int lpdwSize);
Run Code Online (Sandbox Code Playgroud)

这就是我调用函数的方式:

InternetGetCookie("http://example.com", null, ref lpszCookieData, ref size)
Run Code Online (Sandbox Code Playgroud)

谢谢.

c# cookies wininet dll-reference

9
推荐指数
1
解决办法
6331
查看次数

最终编译程序集中.Net中项目和dll依赖项之间的差异

假设我有两个项目A和B. A取决于B.我可以用两种方式指定:

  • 在同一个解决方案中包含A和B,并将B指定为A的项目依赖项.这在A的msbuild项目中显示为"ProjectReference"节点.
  • 包含对B的已编译dll的引用作为A的依赖项.这在A的msbuild项目中显示为"Reference"节点

我的问题是,一旦我为A构建程序集,这两种方法之间的最终输出是否存在差异.

我尝试创建几个简单的项目来模拟这种关系并尝试比较 - 但不同的比较工具告诉我不同​​的东西.在写一些逐字节比较这些文件的东西时,我想知道你们是否对此有所了解.具体来说,如果我使用dll引用而不是项目引用,构建的程序集的行为是否会有任何差异.

.net c# project-reference dll-reference

7
推荐指数
1
解决办法
2362
查看次数

在项目中查找dll的所有引用

在Visual Studio 2010(或2012)中,有一种方法可以在代码中找到提及引用的dll中定义的任何类/方法的所有引用.

目前我使用了两个进程(取决于具体情况):

  • 第一个涉及从项目中删除dll引用,然后记下所有构建错误位置.
  • 另一种方法是打开引用Object Browser然后扩展到它的命名空间,并且对于每个命名空间我进行手动搜索,但这并不总是有助于查找所有引用,并且因为遗留代码具有跨越多个程序集的相同名称空间,所以过滤掉很多噪音.

这些都不是真正理想的解决方案,有没有更简单的方法呢?也许是通过VS扩展.

visual-studio dll-reference

7
推荐指数
2
解决办法
1万
查看次数

为什么在根据.NET Standard编译.NET Framework项目时缺少此NuGet依赖项?

我有3个项目的Visual Studio解决方案。

顶层是.NET Framework 4.6.1控制台应用程序(项目A)。它取决于.NET Framework 4.6.1类库(项目B)。项目B依赖于.NET Standard 2.0类库(项目C)。

I have some code in Project C that uses System.Data.SqlClient (NuGet package version 4.6.1).

Due to the following known issue https://github.com/dotnet/sdk/issues/901 I have also added System.Data.SqlClient as a NuGet dependency to Project B (the .NET Framework Class Library).

This is Scenario 1, and when the solution is built, System.Data.SqlClient is copied to the /bin/Debug folder of Project A and the the application runs successfully.

The code for Scenario 1 is here …

.net c# dll dll-reference .net-standard

6
推荐指数
1
解决办法
751
查看次数

添加对 SQLite.Interop.dll 的引用时出错

我需要阅读特定网站的一些 cookie,我在互联网上找到了一个可能对我有帮助的代码。这段代码使用了 SQLite 的一些方法细节,为了使这有必要添加对一些 SQLite dll 的引用,但问题是,当我添加 SQlite.Interop.dll 时,这会产生一个错误:

无法添加对“C:\Program Files\System.Data.SQLite\2012\bin\SQLite.Interop.dll”的引用。请确保该文件可访问,并且它是有效的程序集或 COM 组件。

在此处输入图片说明

所以,有人可以帮我解决这个麻烦。我已经在互联网上的几个网站上看到了与它相关的东西,但直到现在,我都没有成功。

这是我找到的代码,他需要 SQLite dll 文件引用,就像我上面说的那样。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApplication1
{
    class Program
    {
        static public IEnumerable<Tuple<string, string>> ReadCookies(string hostName)
        {

            if (hostName == null) throw new ArgumentNullException(hostName);

            var dbPath = Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData) + @"\Google\Chrome\User Data\Default\Cookies";
            if (!System.IO.File.Exists(dbPath)) throw new System.IO.FileNotFoundException("Cant find cookie store", dbPath); 

            var connectionString = "Data Source=" + dbPath + ";pooling=false";

            using (var conn = new System.Data.SQLite.SQLiteConnection(connectionString))
            using …
Run Code Online (Sandbox Code Playgroud)

c# sqlite dll-reference

5
推荐指数
1
解决办法
6244
查看次数

添加对csproj文件的引用有什么作用?

是否准确地说给定的DLL包含一堆命名空间(每个中包含类,常量,函数等),并且在csproj中引用dll允许在属于该项目的.cs文件中使用它们?

我试着在网上搜索,但无法找到让我满意的答案.(可能是因为这个问题很基础)

c# dllimport csproj dll-reference

5
推荐指数
1
解决办法
3430
查看次数

我如何知道 .NET Standard 需要哪些平台扩展?

我针对我想从我自己的 .NET Standard 类库中使用的类库运行了.NET Portability Analyzer。我要使用的类依赖于 .NET 框架。.NET Standard 的兼容性结果为 91%,.NET Standard + Platform Extensions 的兼容性结果为 100%。

从我读过的内容来看,我知道平台扩展意味着有一些 nuget 包,如果我添加到我的项目中,我将获得 100% 的兼容性。

问题是我怎么知道我应该安装哪些 nuget 包?我所能找到的只是这个页面,它只列出了一堆命名空间——如何确定我的项目需要哪些命名空间?

.NET 可移植性分析器结果

.net c# portability dll-reference .net-standard-2.0

5
推荐指数
0
解决办法
1834
查看次数

DLL引用有多贵?

本地或全局(GAC/.NET)DLL引用,它们有多贵?

当然,我们永远不应该参考我们不使用的东西,但是出于好奇,我问:引用整个.NET框架是否会成为一个重要的性能问题?

一个类似的更实际的问题是:是否值得在项目中组合类似的命名空间以最小化需要引用的DLL文件(只要我必须在任何情况下使用这些DLL中的每个代码)?

.net c# vb.net dll dll-reference

2
推荐指数
1
解决办法
81
查看次数