急 .NET中如何引用Quartz.dll,Common.Logging.dll

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了急 .NET中如何引用Quartz.dll,Common.Logging.dll相关的知识,希望对你有一定的参考价值。

VS2010 框架2.0
是否是把这两个dll文件下载到项目下再引用

参考技术A 不需要。
直接引用右键,添加引用,找到你的dll所在的位置就好追问

貌似这两个dll 在添加引用里边是直接找不到的

追答

添加引用有好几个tab的,你选择浏览,然后在“查找范围”里选择路径。再试试

本回答被提问者采纳
参考技术B 右击项目---添加引用---浏览,然后找到你要添加的dll点击确定就可以了 参考技术C 添加引用 选择 浏览 然后找到你的dll文件就行 参考技术D 添加应用,点击浏览,去本地磁盘上找到你的dll文件确定即可!

如何在 SSIS 包中使用 COM 引用?

【中文标题】如何在 SSIS 包中使用 COM 引用?【英文标题】:How do I use COM reference within SSIS package? 【发布时间】:2012-10-29 18:28:37 【问题描述】:

我正在尝试使用 SSIS 脚本任务中的 Microsoft Shell Controls And Automation COM 对象库 (C:\Windows\System32\shell32.dll) 来操作 .zip 存档。

不幸的是,虽然我已经成功添加了相关的参考并且脚本任务编译正常。我正在使用 VB.NET,这是值得的。一旦我尝试创建在库中定义的任何对象,我就会收到以下运行时错误:

错误:存档文件中的 0x1:System.Reflection.TargetInvocationException:调用目标已引发异常。 ---> System.IO.FileNotFoundException:无法加载文件或程序集“Interop.Shell32,版本=1.0.0.0,文化=中性,PublicKeyToken=null”或其依赖项之一。该系统找不到指定的文件。 文件名:“Interop.Shell32,版本=1.0.0.0,文化=中性,PublicKeyToken=null” 在 ST_a2650b7f39504eaa8c80e37a6736d957.vbproj.ScriptMain.Main()

我以为 Interop DLL 会为我处理好 - 有谁知道我错过了哪一步?

【问题讨论】:

为什么不用 7zip 试试呢? ***.com/questions/222030/… 不幸的是,我需要正在尝试开发的解决方案才能在没有第三方软件的情况下工作:-( 我需要将 Interop.Shell32 程序集安装到 GAC 中吗?如果是这样,我可以从哪里下载 gacutil? 【参考方案1】:

SSIS 需要向 GAC 注册所有 .dll 引用,您是正确的。

关于将此 dll 安装到 GAC 中,您有不同的选择:

    将 .dll 拖放到 %windir%\assembly\ 文件夹中。

    使用您正在考虑使用的 gacutil.exe:关于使用 gacutil 安装到 GAC,这里有很多有用的信息:Global_Assembly_Cache。基本上,如果您安装了 .NET 框架(您使用的是 VB.NET,所以没有问题),您的 Microsoft.NET 文件夹中就会有一个 gacutil.exe。

    (我通常在所有其他方法都失败时使用)在 Visual Studio 中创建一个 Windows MSI 项目,它会自动为您完成所有这些操作,此处提供有用信息How to install assembly in the GAC using MSI

如果您在 GAC 中安装该 .dll 并且仍然遇到问题,另一种选择是实际创建一个单独的 Visual Studio 项目,其中包含您用于操作所需 zip 文件的逻辑构建它并使用 SSIS 从 SSIS 调用其 exe 执行流程任务。您可以传递 SSIS 包中指定的参数。不是很优雅,但如果您热衷于使用 SSIS,它可以完成工作。


更新:

这个问题的解决方案成功了SSIS Script Task COMException / FileNotFoundException error。问题在于添加 dll 的签名引用,此答案为在 SSIS 脚本任务中添加 COM 引用提供了一个很好的分步解决方法。

【讨论】:

我需要将什么 DLL 放入 GAC?我已经尝试安装“Interop.Shell32.dll”和“Shell32.dll”,但都没有成功。当我尝试安装 SSIS 在其临时文件夹中生成的 Interop.Shell32.dll 时,我被告知它没有强名称。安装 Shell32.dll 失败,因为该模块应包含程序集清单。 顺便说一下,使用 Windows 资源管理器通过拖放安装到 GAC 中也不起作用,因为我无法将文件拖放到 C:\Windows\assembly 虚拟文件夹中(甚至当我以管理员身份运行时)。 我必须安装 .NET Framework SDK 才能获得 gacutil。 最后,很遗憾,我无法按照您的最后建议进行探索,因为我没有 Visual Studio - 只有 VSTA。 :-( 我想我可以安装 Visual Studio Express,但对于一个简单的归档问题来说,这是相当大的努力! 顺便说一下,我使用的是 .NET Framework 3.5 - 所以 System.IO.Compression 也不是一个选项。

以上是关于急 .NET中如何引用Quartz.dll,Common.Logging.dll的主要内容,如果未能解决你的问题,请参考以下文章

c:\windows\system32\quartz.dll怎么注册

asp.net的MVC中使用office word 2003的com组件问题!!求助!急!

急!急!急!asp.net ckeditor3.5.3如何实现添加图片上传功能!代码越详细越好,最好可以直接运行的!

开始 运行输入regsvr32 quartz.dll显示LoadLibrary( quartz.dll" )失败 找不到指定的模块

求救!!..Winform 对 Excel的操作问题 ..!!!!!急急急!!!!

用C#.net连接MYSQL,怎么连接?还要安装啥吗?急!!!