我正在尝试(在菜单栏中)从程序中打开更新日志。我有一个.msi文件,但问题是我不知道用户将程序安装在哪里。例如,在我的代码中,我可以放置C:\Program Files\Colour Picker\updatelog.txt
的路径。但是,如果用户在其他地方安装了该程序怎么办?他们将尝试打开更新日志文本文件,并出现错误。
可能有一种方法可以从安装位置打开文本文件。所以在伪代码中,
OPEN updatelog.txt(InstallLocation).
获取应用程序存储位置的一种方法是使用My.Application.Info.DirectoryPath
。
与TextReader
或StreamReader
结合使用应该对您来说足够好。
[不知道您的具体实现,我无法提供具体答案。如果您更新问题,我将完善我的答案。就目前而言,我相信这可能就足够了。
最好将日志文件保存在与应用程序安装文件夹不同的位置。您不想被管理访问要求绊倒。
例如,作为最佳实践,您可以使用类似以下的内容:
Dim sLogFile As String = "UpdateLog.txt"
Dim sAppData As String = Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData)
Dim sAppName As String = "Colour Picker"
Dim sLogPath As String = IO.Path.Combine(sAppData, sAppName, sLogFile)
如果要使用户可以访问日志文件,可以提供一种在用户界面中打开它并指向该位置的方法。