向各位高人请教一下:
我用C#开发了一个WinForm的系统,该系统没有EXE文件,全部由dll构成,其中包括一个用C#开发的ActiveX控件。我需要通过另一个Delphi编写的程序访问本系统的ActiveX从而运行该系统,但是两个系统是完全独立发布和安装的。C#的系统采用了多国语言,语言包放在该系统所在路径下。
我通过重新设置AppDomain.CurrentDomain的APP_BASE,解决了C#系统动态链接库的加载问题,现在的情况是:程序能够运行正常,但是却不能正确加载语言包。语言包的默认路径在主程序路径下,如果把语言包复制到Delphi程序所在路径下,语言包能够加载正常,但实际使用情况却不允许,也不可能这样做。
向各位高人请教一下,.Net程序语言包的加载原理是怎样的?如何修改.Net程序语言包的加载路径?
我用C#开发了一个WinForm的系统,该系统没有EXE文件,全部由dll构成,其中包括一个用C#开发的ActiveX控件。我需要通过另一个Delphi编写的程序访问本系统的ActiveX从而运行该系统,但是两个系统是完全独立发布和安装的。C#的系统采用了多国语言,语言包放在该系统所在路径下。
我通过重新设置AppDomain.CurrentDomain的APP_BASE,解决了C#系统动态链接库的加载问题,现在的情况是:程序能够运行正常,但是却不能正确加载语言包。语言包的默认路径在主程序路径下,如果把语言包复制到Delphi程序所在路径下,语言包能够加载正常,但实际使用情况却不允许,也不可能这样做。
向各位高人请教一下,.Net程序语言包的加载原理是怎样的?如何修改.Net程序语言包的加载路径?
App.config配置文件有一个privatePath 配置项,可以从任意路径加载程序集。
还有个codebase 配置项目。
不知道这些信息够不够?
不行的话再试试 AppDomain.ResourceResolve 事件。
用 AppDomain.ResourceResolve事件也不行,完全没有反应。在AssemblyInfo.cs 里面指定为特定语言,也一样。