我正在编写一个VB.Net AddIn for outlook(因此它的VBA
带有.NET
)。它是标准Calender Item屏幕的补充。一切都很顺利。但我有一个带有两个文本框的第三个表单,它显示running assembly
和user.config
路径的文件路径,其中包含两个按钮"Open in Explorer..."
。
BUT: user.config文件不在开头。当我更改第二个表单中的设置并首次保存时,将创建父目录及其自身。
我尝试使用My.Settings.save()
在我的主窗体的form_Initialization方法上保存用户设置,但它不会生成奇怪的user.config
文件。那应该和我在第二种形式上做的一样。
生成user.config
文件的代码:
Private Sub BtnSaveSettings_Click(sender As Object, e As EventArgs)
If (CmbxDebugOption.Text <> "") And (CmbxOnBootActive.Text <> "") Then
' save active start option
If CmbxOnBootActive.SelectedItem.ToString.ToLower = "ja" Then
My.Settings.ActiveOnStart = True
ElseIf CmbxOnBootActive.SelectedItem.ToString.ToLower = "nein" Then
My.Settings.ActiveOnStart = False
End If
' save debug option
If CmbxDebugOption.SelectedItem.ToString.ToLower = "deaktiviert" Then
My.Settings.AlwaysDebug = False
My.Settings.OnetimeDebug = False
ElseIf CmbxDebugOption.SelectedItem.ToString.ToLower = "nur einmal" Then
My.Settings.AlwaysDebug = False
My.Settings.OnetimeDebug = True
ElseIf CmbxDebugOption.SelectedItem.ToString.ToLower = "immer aktiv" Then
My.Settings.AlwaysDebug = True
My.Settings.OnetimeDebug = False
End If
My.Settings.Save()
End If
' Close Form
Me.Close()
End Sub
答案 0 :(得分:1)
我找到了自己的解决方案。我在My.Settings
中创建了一个名为FirstRunAfterInstall
的变量,我在mainform的第一次运行时将其设置为False
。我还将其他变量设置为默认值,然后保存整个混乱。然后该文件将写入您的硬盘。
看起来像这样:
If My.Settings.FirstRunAfterInstall Then
My.Settings.FirstRunAfterInstall = False
My.Settings.ActiveOnStart = False
My.Settings.OnetimeDebug = False
My.Settings.AlwaysDebug = False
My.Settings.Save()
End If
My.Settings.Save()
是最重要的部分!它会刷新一些缓存。如果您忘记了此部分,则更改将不会写入文件。
来自德国的问候,
Christian Hase