クリックすると、ユーザーが現在のブートモードを表示するという単純なWPF
プロジェクトがあります。button
Microsoft の Web サイトからいくつかのコードを見つけましたが、古い可能性がありますか? http://support.microsoft.com/kb/291664
これが私のコードです:
Class MainWindow
Private Declare Function GetSystemMetrics Lib "user32" _
(ByVal nIndex As Long) As Long
Const SM_CLEANBOOT& = 67
Private Sub DetectModeButton_Click(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs) Handles DetectModeButton.Click
Dim result As Long
result = GetSystemMetrics(SM_CLEANBOOT)
Select Case result
Case 0
MsgBox("System started in normal mode.")
Case 1
MsgBox("System started in safe mode.")
Case 2
MsgBox("System started in safe mode with networking.")
Case Else
MsgBox("Unknown value returned from GetSystemMetrics.")
End Select
End Sub
End Class
実行時に次のエラーが発生します。
A call to PInvoke function 'BootModeTest!BootModeTest.MainWindow
::GetSystemMetrics' has unbalanced the stack. This is likely
because the managed PInvoke signature does not match the
unmanaged target signature. Check that the calling
convention and parameters of the PInvoke
signature match the target unmanaged signature
これを解決する方法を知っている人はいますか?
同じことに関する洞察も高く評価されます。