我的应用程序在其 .exe.config 中需要useLegacyV2RuntimeActivationPolicy,因为它是一个使用混合模式 CLR2 程序集的 CLR4 应用程序。
从“开始”菜单启动我们的应用程序时一切正常,但是如果用户通过单击与我们的应用程序具有文件类型关联的文件之一来启动我们的应用程序,则不会读取 app.config 文件并加载这些文件CLR2 程序集失败。
根据进一步的研究,ShellExecute 似乎不会读取 .config 文件(即使指定了 app 文件夹),但 WinExec 会。我认为 shell 使用 ShellExecute 通过文件关联来启动应用程序。
除了在启动主应用程序的进程之前编写一个设置当前文件夹的中间应用程序之外,还有什么解决方法吗?这是在本网站的其他地方提出的。
提前致谢!