我有WPF
一个简单的项目,button
单击时会向用户显示他们所处的启动模式。
我从微软的网站上找到了一些代码,但它可能已经过时了?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
有谁知道如何解决这个问题?
对此的任何见解也值得赞赏。