![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
No.1ベストアンサー
- 回答日時:
> コンピュータのロックをするfunctionを作成したいです
何のために? 目的を提示しないと的外れなアドバイスになって
しまいそうですが。。
関数にする意図もよくわかりませんが...何個かサンプルを。
全て Windows2000、XP 限定です。Win9x 系 OS や NT では動きません。
■方法1. Shell を使う
Shell "rundll32.exe user32.dll,LockWorkStation"
■方法2. LockWorkStation API を使う
Private Declare Function LockWorkStation Lib "user32.dll" () As Long
Sub SampleProc()
If LockComputer() = False Then
MsgBox "ロックできません", vbCritical
End If
End Sub
' // OS をロックする(無理やり関数にしてみた)
Public Function LockComputer() As Boolean
LockComputer = CBool(LockWorkStation() <> 0)
End Function
■方法3. [Windows]+[L] キーシュミレート
Private Declare Sub keybd_event Lib "user32.dll" ( _
ByVal bVk As Byte, _
ByVal bScan As Byte, _
ByVal dwFlags As Long, _
ByVal dwExtraInfo As Long)
Private Const VK_LWIN As Long = &H5B
Private Const KEYEVENTF_KEYUP = &H2
Private Const KEYEVENTF_KEYDOWN = &H0
' // [Win]+[L] のキーシュミレート
Public Sub LockComputer()
Call keybd_event(VK_LWIN, 0&, KEYEVENTF_KEYDOWN, 0&)
Call keybd_event(vbKeyL, 0&, KEYEVENTF_KEYDOWN, 0&)
Call keybd_event(vbKeyL, 0&, KEYEVENTF_KEYUP, 0&)
Call keybd_event(VK_LWIN, 0&, KEYEVENTF_KEYUP, 0&)
End Sub
■方法4. WMI を使う(調べてないけど多分できるはず)
こんなところ。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(プログラミング・Web制作) IT初心者です 仕事で、vb.netで作成されたdllをvbaで呼び出すプログラムを作成しろと言われ 1 2023/03/27 08:22
- フリーソフト cygewf-2.dllがない、と表示され、ダウンロードしたファイルが動作しない 2 2023/03/27 11:05
- Visual Basic(VBA) VBAでfunctionを利用しようとしたときに「引数は省略できません」というエラーが出ます 1 2022/10/15 16:30
- Excel(エクセル) 上から順にすべてのデータを抽出したい 3 2023/08/25 15:29
- 労働相談 合意済み仕様の商品納入後における仕様変更要求への対応について 5 2023/04/19 09:41
- その他(Microsoft Office) OneDrive Personalについて 1 2022/08/02 18:25
- Visual Basic(VBA) Excel のユーザー定義関数でソルバーが動作しない 1 2022/09/05 19:51
- LANケーブル・USBケーブル USBの給電 7 2022/09/16 08:27
- Visual Basic(VBA) ChatGPTに作らせたい Excel VBA 1 2023/04/05 19:56
- Java Java 石取りゲーム 3 2023/02/02 15:46
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
WIN10で常にフォームを手前に
-
Win7のXpmodeにfm20.dllが無い
-
visual studioの不要なDll削除方法
-
指定された引数が有効範囲にな...
-
scrrun.dllの読み方を教えてく...
-
python エラー
-
エクセルのエラーメッセージ「4...
-
<unistd.h>をVisualStudioでつ...
-
unsigned long long 型のフォー...
-
コンパイルできません。
-
C言語でヘッダファイルにグロー...
-
Excelのエラーで困ってます。
-
外部依存関係について
-
fortranでプログラムを実行する...
-
適切な変換関数が存在しない???
-
sys/time.hのインクルードがで...
-
visual studio2019でデバッグが...
-
VBAを何回も作り直して、容量が...
-
eclipseでプログラムが実行でき...
-
1 つ以上の複数回定義されてい...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
visual studioの不要なDll削除方法
-
C# DLL エントリ ポイントが...
-
VB6.0(SP6)にて開発を行なって...
-
WIN10で常にフォームを手前に
-
VC++6.0 でのライブラリ参照方法
-
エクセル マクロで指定フォルダ...
-
res://ieframe.dll/について
-
VBAエディタのコード画面で、カ...
-
ASP.NETのDLL入れ替えについて
-
指定された引数が有効範囲にな...
-
dllをいじる。。
-
メイクファイルからdllを生成す...
-
手書き文字認識のdll
-
[VBA]64b版-行数表示.dllの登録...
-
VBにてIMEの入力モードを変える...
-
VB2003で レジストリを格納する
-
VB.NET xdoc2txtをつかってPDF...
-
コマンドラインで商用利用可能...
-
wavからmp3に変換する方法
-
ファイルをvbaで圧縮したいので...
おすすめ情報