Outlook 2007 Addin C# - 启动路径

jon*_*ers 6 .net c# clickonce outlook outlook-addin

我在Outlook 2007加载项中使用了一些Win32 dll.

所以我添加了dll,使用构建操作"Content"并复制到本地目录.

为了获得它们的路径,我通常会使用:

Path.Combine(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), "MyDll.dll");
Run Code Online (Sandbox Code Playgroud)

当ClickOnce发布时,Assembly.GetExecutingAssembly没有给我所有ClickOnce文件的标准路径.我的文件位于%appdata%..\Local\Apps\2.0中,但程序集位于%appdata%..\Local\assembly中.

有没有更好的方法从ClickOnce部署的Outlook加载项中获取这些dll的路径?

jon*_*ers 2

这段代码现在给了我正确的路径:

string path = Path.Combine(AppDomain.CurrentDomain.SetupInformation.ApplicationBase, "MyDll.dll");
Run Code Online (Sandbox Code Playgroud)

在解析命令行参数时,我必须使用SetupInformation,并且一些调试使我找到了这个属性。

如果它给我带来任何麻烦,我会回复,因为我们需要在多台机器上安装并看看会发生什么。