我在哪里存储程序资源



我刚刚完成了第一个正确的程序。我已经完成了所有的测试,一切都很好。

让我担心的是,我不确定我是否已经把所有"程序外"的东西都保存在了正确的位置。我有一个访问数据库,一个文本文件和一些声音文件存储在调试文件夹中,这是我开始制作程序时创建的。我使用的所有字符串都有这些元素的特定位置。例如:filelocation = "C:Computer Science Coursework 2019Main Program CourseworkMain Program CourseworkbinDebugLanguageAndFont.txt"

我的问题是,当程序被编译时,所有这些都会以某种方式与程序"集成"吗?即使,如果我想在另一台电脑上调试,该怎么办?我知道那里有一个资源文件夹,我在那里放了一些图像和图标,但我想我不能把数据库拖到那里?

有没有一种方法可以将所有这些存储在程序中,这样任何PC都可以调试它?

如果要在其他计算机中动态存储文本文件或任何其他文件,可以使用Environment.GetEnvironmentVariable()来获取SET变量。只需在命令提示符中键入SET即可列出所有设置变量(在这种情况下,我们只使用位置变量(。

可以在此处找到编写文件的文档,以便编写资源文件。例如:

Private fileLocation = Environment.GetEnvironmentVariable("USERPROFILE").ToString +
"MyProjectLocationhello.txt"
My.Computer.Filesystem.WriteAllText(fileLocation, "some text in hello world", false)

如果您想再次读回文本,只需使用ReadAllText()即可。

My.Computer.Filesystem.ReadAllText(fileLocation)

这是编写和读取具有动态位置的文件的最简单方法,在每个人的Windows系统中都可以使用。


注意:您应该在此处使用My.Settings,以方便&可管理的代码。您可以通过转到"项目设置">"设置"来定义My.Settings.(varName)的变量。但要确保程序在使用后不会迁移到其他地方。仅为指定的路径保存设置。如果应用程序的路径被更改,它将不起作用。

希望它能帮助你。

最新更新