
No.2ベストアンサー
- 回答日時:
Mutex クラス と System.Environment.UserNameを利用すれば可能かもしれません。
System.Environment.UserName で現在のスレッドを開始した人のユーザー名を
取得できると思うので、その取得したユーザー名をもとに
Mutex クラス を利用した2重起動チェックをもちいると可能かも。
Protected Shared Sub Main()
Dim hMutex As New System.Threading.Mutex(False, Application.ProductName & System.Environment.UserName )
If hMutex.WaitOne(0, False) = True Then
GC.KeepAlive(hMutex)
Application.Run(New Form1)
Else
Application.Exit()
End If
hMutex.Close()
End Sub
通常の Mutex をもちいた2重起動チェックは、Mutex を生成しする時に Application.ProductName
だけを用いますが、それに更にスレッドを開始した人のユーザー名を足した名前で作成すれば、
いいと思う。
Mutex の2重起動チェック方法は方々で利用されているので調べられたらよいと思います。
No.1
- 回答日時:
1)アクセス情報ファイル(テキストファイルなど)を利用する。
・アクセス時に、アクセス情報ファイルを読み込み、同一利用者の情報があれば、アプリケーションを終了する。同一利用者の情報がなければ、アクセス情報ファイルに利用者情報を書き込む
2)データベースを利用する
・アクセス時に、データベースに問い合わせ、同一利用者情報があれば、アプリケーションを終了する。同一利用者の情報がなければ、データベースに利用者情報を書き込む
いずれの場合も、初回アクセス後の終了処理で、利用者情報を削除
するタイミングに注意が必要。
終了ボタンを押さずに、ウィンドウをクローズしたとか、タスクを
強制終了した場合、利用者情報を削除できない場合もある。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
C#でGUI・CUIの判断する仕方を...
-
MFCアプリケーションでの終了コ...
-
C# の OpenFileDialog
-
VB6での二重起動(複数起動)の制...
-
OSによるWinExecの動...
-
Ctrl + P のメッセージ送信
-
コンソールアプリケーションの...
-
VC++2010 画面なしのアプリケ...
-
SYSTEM権限でプロセス機動
-
Macターミナルで実行中のプログ...
-
C# シリアル通信でデータ受信...
-
メモリが不足しています(VBA)
-
vba listviewにおけるtextのAli...
-
winsockでソケット通信の開発を...
-
H8 マイコン セクションの設...
-
VBSの処理中一旦処理を止めて再...
-
ACCESS側からEXCELの書式を設定...
-
インスタンスハンドルは何の役...
-
エクセルVBAの自動変換機能?
-
C言語で、メモリを解放しないで...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
WSH(VBScript)でアプリケーショ...
-
フレームワーク「4.8.1」で、[S...
-
VB.NETでMessageBoxを表示した...
-
コンソールアプリケーションの...
-
SetWindowPosについて
-
pccNTmon.exeとntrtscan.exeの違い
-
Accessフォームからの外部アプ...
-
初回接続の遅い原因について
-
Console Applicationをタスクト...
-
VBSでのSendKeysでの画面の最小化
-
Vba アプリケーションが立ち上...
-
イラストレーターCS4のシリアル...
-
MFCアプリケーションでの終了コ...
-
実行時のコマンドプロンプトを...
-
C#でGUI・CUIの判断する仕方を...
-
アプリケーションをVBS(WSH?)で...
-
OSによるWinExecの動...
-
vb6で異なるのプロジェクト間で...
-
SYSTEM権限でプロセス機動
-
VB.NETでフォームアクティブの...
おすすめ情報