我希望能够顺利高效地安装该解决方案,但是我“继承”的东西远非如此,编写了大部分代码的人已经离开了公司。将dll安装到GAC中
目前我正试图将它安装在测试服务器上,而不是安装后正确位置的所有dll的土地。首先,如果我在一个项目中使用log4net,那么安装后我需要在文件夹中的log4net.dll(我猜)。如何让log4net.dll与项目dll一起复制?
其次,项目A期望Project C的dll在GAC中,或者在Visual Studio中进行调试并检查模块的加载位置。 我也看到了,这是在A项目后生成事件命令行中输入:
“C:\ Program Files文件(x86)的\微软的SDK \的Windows \ v7.0A \ BIN \ NETFX 4.0工具\ 64 \的Gacutil.exe” -i “$(TARGETPATH)” 复制 “$(TARGETPATH)” “C:\ Program Files文件\ MySolution \ BIN”
那么,如何让项目C的DLL到GAC通过安装方式?我在测试服务器上遇到错误,因为它无法加载C.dll。
更多的细节
的解决方案后更新已经安装了Windows安装程序,在父文件夹中创建几个文件夹,如应用程序,箱,发动机,服务等
在Apps文件夹,我有A.exe,它正在寻找C.dll。但是,C.dll登陆bin文件夹。如上所述,在执行A.exe期间,它实际上从GAC加载了C.dll模块(并且在我的笔记本电脑上,由于在属性中指定了构建后事件命令行,因此GAC中的那些文件为的项目C,但不是在我试图安装此解决方案的测试服务器的GAC中)。
所以,是的,我认为我可以像这样运行的东西:在安装后
gacutil -i C.dll
,但它似乎并不正确。
您使用哪种安装技术?您不需要将C库添加到GAC,GAC仅适用于.Net程序集。为什么你不能从复制一切内容的文件夹中执行? – mageos
他似乎指的是“项目C”,而不是用C编写的项目。 –
对于混淆@mageos抱歉,我没有使用C库,而是编写C#代码。我只是称其中一个项目为“项目C”为例。 – Igavshne