SSIS中DLL引用与操作详解
在SQL Server Integration Services (SSIS) 中引用DLL文件是一个关键任务,尤其是在处理自定义组件和扩展时。以下是详细的步骤来确保正确地集成和管理DLL依赖: 1. 卸载冲突的DLL: 在开始之前,确认已卸载可能导致版本冲突的相同或相似名称的DLL。前往C:\WINDOWS\assembly路径,查看是否存在不需要的版本,如果存在,请移除。 2. 切换到Visual Studio SDK目录: 使用命令行(cmd)导航至Visual Studio安装的SDK目录,例如: - 对于32位版本:`cd C:\ProgramFiles\MicrosoftVisualStudio8\SDK\v2.0\Bin` - 对于64位版本:`cd C:\ProgramFiles\Microsoft.NET\SDK\v2.064bit\Bin` 3. 创建Strong Name (SNK) 文件: Strong Name工具(sn.exe)用于保护和验证.NET DLL。生成SNK文件以确保代码签名,命令如下: ``` sn -k "D:\Perforce\1985\depot\dmo\Zeus\Zeus\Development\ui\ZeusFrad\Zeus.Frad.snk" sn -k "D:\Perforce\1985\depot\dmo\Zeus\Zeus\Development\ui\ETL\ShredComponent\shredcomp.snk" ``` 这里生成了两个SNK文件,每个文件对应一个DLL项目。 4. 检查公钥和公钥哈希: 为了验证公共密钥和公钥哈希,运行: ``` sn -Tp D:\Perforce\1985\depot\dmo\Zeus\Zeus\Development\ui\ZeusFrad\bin\Release\Frad.dll sn -Tp D:\Perforce\1985\depot\dmo\Zeus\Zeus\Development\ui\ETL\ShredComponent\bin\Debug\ETL.dll ``` 这将显示每个DLL的公钥信息。 5. 将DLL放入GAC(全局Assembly Cache): 使用gacutil.exe将DLL添加到系统全局缓存,以便SSIS能够访问,命令如下: ``` gacutil -I "D:\Perforce\1985\depot\dmo\Zeus\Zeus\Development\ui\ZeusFrad\bin\Release\Frad.dll" gacutil -I "D:\Perforce\1985\depot\dmo\Zeus\Zeus\Development\ui\ETL\ShredComponent\bin\Debug\ETL.dll" ``` GAC中的DLL将在所有.NET应用程序之间共享,包括SSIS。 6. 存放DLL的位置: 最后,确保将DLL复制到以下路径之一,以便SSIS能够查找它们: - C:\WINDOWS\Microsoft.NET 遵循这些步骤,你将能够成功地在SSIS项目中引用并管理DLL,确保其安全性、可用性和正确配置。请注意,如果你的DLL是面向其他特定框架(如IronPython、IronRuby等),可能需要额外的配置步骤。同时,保持良好的命名和版本控制策略对于避免冲突至关重要。
need go to C:\WINDOWS\assembly to uninstall dll at first, otherwise there will have 2 version.
1. go to VS folder in cmd, like:
cd C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\Bin
or
cd C:\Program Files\Microsoft.NET\SDK\v2.0 64bit\Bin
2. use sn.exe to generate a snk file, like:
sn -k "D:\Perforce\1985\depot\dmo\Zeus\Zeus\Development\ui\ZeusFrad\Zeus.Frad.snk"
sn -k "D:\Perforce\1985\depot\dmo\Zeus\Zeus\Development\ui\ETL\ShredComponentshredcomp.snk"
2. build project
3. use sn.exe to check Public key and Public key token, like:
sn -Tp D:\Perforce\1985\depot\dmo\Zeus\Zeus\Development\ui\ZeusFrad\bin\Release\Frad.dll
sn -Tp D:\Perforce\1985\depot\dmo\Zeus\Zeus\Development\ui\ETL\ShredComponent\bin\Debug\ETL.dll
4. use gacutil to put dll into C:\WINDOWS\assembly , like:
gacutil -I "D:\Perforce\1985\depot\dmo\Zeus\Zeus\Development\ui\ZeusFrad\bin\Release\Frad.dll"
gacutil -I "D:\Perforce\1985\depot\dmo\Zeus\Zeus\Development\ui\ETL\ShredComponent\bin\Debug\ETL.dll"
5. put dll into the following folders:
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727 (must)
C:\Program Files\Microsoft SQL Server\90\DTS\PipelineComponents
or
D:\Program Files (x86)\Microsoft SQL Server (x86)\90\DTS\PipelineComponents
下载后可阅读完整内容,剩余1页未读,立即下载
- 粉丝: 0
- 资源: 15
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 李兴华Java基础教程:从入门到精通
- U盘与硬盘启动安装教程:从菜鸟到专家
- C++面试宝典:动态内存管理与继承解析
- C++ STL源码深度解析:专家级剖析与关键技术
- C/C++调用DOS命令实战指南
- 神经网络补偿的多传感器航迹融合技术
- GIS中的大地坐标系与椭球体解析
- 海思Hi3515 H.264编解码处理器用户手册
- Oracle基础练习题与解答
- 谷歌地球3D建筑筛选新流程详解
- CFO与CIO携手:数据管理与企业增值的战略
- Eclipse IDE基础教程:从入门到精通
- Shell脚本专家宝典:全面学习与资源指南
- Tomcat安装指南:附带JDK配置步骤
- NA3003A电子水准仪数据格式解析与转换研究
- 自动化专业英语词汇精华:必备术语集锦