Visual Basic で WindowsKey + L (コンソールをロックするためのショートカット) をシミュレートし、それを関数にバインドしたいと考えています。したがって、この関数が呼び出されると、コンソールがロックされます。これはできますか?
1984 次
1 に答える
14
ホットキーのシミュレーションは間違ったアプローチです。あなたがする必要があるのはLockWorkStation
関数を呼び出すことだけです。これは、コードを介してプログラムで実行できることを除いて、++を押して[ワークステーションのロック]を選択するか、+ホットキーを使用するCtrlのと同じ結果になります。AltDelWinL
VBアプリケーションからこの関数を呼び出すには、次のように宣言を記述する必要があります。
Private Declare Function LockWorkStation Lib "user32.dll" () As Long
プロシージャを定義する前に、その宣言をモジュールファイルの先頭に配置することをお勧めします。次に、いずれかのプロシージャ内で、関数を呼び出すことができます。例えば:
Private Sub LockComputer()
LockWorkStation
End Sub
LockWorkStation
さらに良いコードは、エラーコードの戻り値をチェックします。戻り値0は、エラーを示します。VBでWin32エラーをチェックする標準的な方法は、Err.LastDllError
正確に何が悪かったのかについての詳細情報を提供します。
于 2012-08-11T03:25:40.953 に答える