0
VB .NETアプリケーションを単一インスタンスとして設定しています。 2回目にアプリケーションを起動しようとすると、ウィンドウが最大化されるのではなく、通常のウィンドウ状態に復元されます(2回目の起動前)。最後の状態を保持するためにアプリケーションウィンドウを作成するにはどうすればよいですか?復元後に単一インスタンスアプリケーションを最大化する
ありがとうございます。
VB .NETアプリケーションを単一インスタンスとして設定しています。 2回目にアプリケーションを起動しようとすると、ウィンドウが最大化されるのではなく、通常のウィンドウ状態に復元されます(2回目の起動前)。最後の状態を保持するためにアプリケーションウィンドウを作成するにはどうすればよいですか?復元後に単一インスタンスアプリケーションを最大化する
ありがとうございます。
あなたは、設定および取得するには
を、それが変わったのとき、レジストリやファイルの最後の状態を保存し、アプリをロードするときにそれを適用することができますレジストリ値は、この点を確認してください。
Public Function GetRegistryValue(ByVal KeyName As String, Optional ByVal DefaultValue As Object = Nothing) As Object
Dim res As Object = Nothing
Try
Dim k = My.Computer.Registry.CurrentUser.OpenSubKey("Software\YourApp", True)
If k IsNot Nothing Then
res = k.GetValue(KeyName, DefaultValue)
Else
k = My.Computer.Registry.CurrentUser.CreateSubKey("Software\YourApp")
End If
If k IsNot Nothing Then k.Close()
Catch ' ex As Exception
'PromptMsg(ex)
End Try
Return res
End Function
Public Sub SetRegistryValue(ByVal KeyName As String, ByVal _Value As Object)
Try
Dim k = My.Computer.Registry.CurrentUser.OpenSubKey("Software\YourApp", True)
If k IsNot Nothing Then
k.SetValue(KeyName, _Value)
Else
k = My.Computer.Registry.CurrentUser.CreateSubKey("Software\YourApp")
k.SetValue(KeyName, _Value)
End If
If k IsNot Nothing Then k.Close()
Catch ' ex As Exception
'PromptMsg(ex)
End Try
End Sub
何がここに自動化されていません、 StartupNextInstanceイベントを超えてそのイベントのイベントハンドラでメインフォームに何かをしている場合、それはリストアのように問題がどこにあるかです。コードを投稿すると、それがどのように見えるのか推測できません。 –
遅く返事を申し訳ありません。 StartupNextInstanceイベントは一切使用しません。私は、単一インスタンスを有効にするために、プロジェクト設定で "Single instance application"のプロパティをチェックしました。 – Daniel