【问题标题】:Directory of where Office solution has been placed放置 Office 解决方案的目录
【发布时间】:2015-06-09 16:48:50
【问题描述】:

我正在尝试访问代表我的应用程序所在的当前目录的路径的字符串。我有一个在 Visual Studio 中制作的 excel 模板,需要用当前目录中的文件名填充(其中文件已放置)及其子目录。我在任何地方都找不到真正有效的解决方案,我发现了一些解决方案的尝试:get path for my .exe 和其他各种无效的解决方案。我目前让用户输入所需的路径,但我想自动找到路径或找到另一种方法来收集这些名称。

【问题讨论】:

    标签: c# visual-studio excel-template


    【解决方案1】:

    这取决于您分发解决方案的方式。 Office 加载项和模板在通过标准 ClickOnce 模式分发时,最终位于 AppData 文件夹中某处的一个隐蔽命名的文件夹中(在另一个隐蔽命名的文件夹内)。您将无法使用常规方法获取当前现有应用程序的路径,因为它们很可能会返回 EXCEL.EXE 本身的路径。 This SO post 提供了一种在 VSTO 解决方案中获取当前文件夹的好方法。

    或者,您可以考虑使用 MSI 来分发您的模板/加载项。这是一条较长的路径并且有很多注意事项,但您最终会在 Program Files 文件夹中安装您的加载项/模板。

    【讨论】:

    • 是的,这就是我面临的问题。生病看看帖子谢谢你
    【解决方案2】:

    我对 c# 不太熟悉,但这是我在 vb 中所做的:

    
    
        Dim dir as string = Application.StartupPath
    
    

    你可以在 excel VBA 中做同样的事情:

    
    
        Dim dir as string = Application.ActiveWorkbook.Path
    
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-04-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-07-10
      • 1970-01-01
      相关资源
      最近更新 更多