重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

Microsoft Visual C++6.0でアプリケーションの2重起動の防止を実現する方法を教えて下さい。

A 回答 (3件)

この回答への補足

度々申し訳ございません。

次の、

LPCSTR lpszClassName = "MSPreventionB";
LPCSTR lpszWinName = "Multiplex starting prevention Test B";

int APIENTRY WinMain(...省略)
{
...省略

if(FindWindow(lpszClassName, lpszWinName)!=NULL){ /* 二重起動防止 */ MessageBox(NULL, "すでに起動しております。", "Multiplex starting prevention Test B", MB_OK); return FALSE; }
...省略
}



を使用していますが、FindWindowの中に入ってくれません。どうしてかわからないのですが。
lpszClassName、lpszWinNameにおいて、
lpszClassNameは、本アプリのメインクラス名を、
lpszWinNameは、アプリケーションウィンドウのタイトルをそれぞれ文字列にして定義しています。何がいけなのでしょうか。

補足日時:2004/09/27 21:15
    • good
    • 0

MSDNには


指定されたクラス名とウィンドウ名を持つトップレベルウィンドウ (親を持たないウィンドウ) を探します。子ウィンドウは探しません。
とありますが、検索対象のウインドウはもちろん親ウインドウは持っていませんよね?
あとは、GetLastError()でエラーを調べてみるとか...
    • good
    • 0

この回答への補足

MFCは使用しておりません。
MFCを使用しない形でお願いします。
説明不足で申し訳ございません。

補足日時:2004/09/27 13:16
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


このQ&Aを見た人がよく見るQ&A