2

VB.NET 级别:初学者

我使用 VB.NET 制作了一个 .exe。在这个程序中,有许多指向 excel 文件的链接(excel 文件有特定的文件夹)。

我的问题:

考虑一个名为 abc.xlsx 的 excel 文件,它位于我的家用电脑上。这个文件的链接如下,D:\work\data\abc.xlsx

现在由于显而易见的原因,当我在工作电脑上运行 .exe 时,此链接将无效。(后来我想在多台电脑上运行这个 .exe)

如何解决这个问题?

我的想法是创建一个动态链接,该链接将根据使用中的 pc 进行自我更新,或者创建一个独立于使用中的 pc 的恒定链接。

帮助将不胜感激。

提前致谢

4

2 回答 2

1

尝试这样的事情:

   Public Function GetDynamicFilename(p_filename As String) As String

      Dim tempPath As String

      Select Case My.Computer.Name.ToUpper
         Case "COMPUTER1"
            tempPath = "c:\work\data"
         Case "COMPUTER2"
            tempPath = "d:\work\files"
      End Select

      Return String.Format("{0}\{1}", tempPath, p_filename)

   End Function
于 2012-07-10T13:14:43.547 回答
1

所以使路径相对于.exe

C:\myapp\myapp.exe c:\myapp\data\abc.xslx ...

所以无论你的应用程序在哪里,你都可以像这样访问你的数据

Dim dataFolder As String = System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly(‌​).Location)
dataFolder = System.IO.Path.Combine(dataFolder,"data")
Dim theFileIwant as String = System.IO.Path.Combine(datafolder,"abc.xslx")
于 2012-07-10T13:47:31.913 回答