На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
[!] Как относитесь к модерированию на этом форуме? Выскажите свое мнение здесь
Модераторы: Qraizer
  
> проверка на то, что приложение уже запущено
    Я пытаюсь использовать FindWindow(...),
    но в нем надо указать имя зарегистрированного класса окна. так вот,
    как задать имя класса окна для dialog-based приложений?
    я пробовал через PreCreateWindow(), но CDialog его не наследует от CWnd.
    А в других методах - уже поздно, класс зарегистрирован.
    Подскажите, пожалуйста.
      1. А зачем задавать класс? Если достаточно уникальное... как это по-русски... Caption окна, задаешь класс=NULL - и нет проблем.
      2. Если нужна ЖЕЛЕЗНАЯ уверенность - используй глобальные атомы или семафоры.
        мне нужно искать по классу окна, т.к. caption меняется ;(
        использование семафоров дает ответ: есть приложение или его нет, а мне надо при нахождении запущенного моего приложения передать на него упраление.
        вот так-с.
          Ну, тогда у меня 2 предложения:
          1. Используя файл-маппинги, создаем именованный маппинг куска своп-файла первым экземпляром, и суем туда HWND его диалога.
          2. А кто мешает зарегистрировать класс окна (и создать само окно в первом экземпляре приложения со стилем WS_VISIBLE=0), которое не будет нифига делать, а только отвечать на сообщение типа WM_USER_GET_MAIN_HWND (или как тебе его захочется обозвать)?
            Не проще ли использовать Mutex ???
            в InitInstance() например
            HANDLE m_Mutex = NULL;
            m_Mutex = OpenMutex(MUTEX_ALL_ACCESS,TRUE,_T("MutexID"));
            /// Если существует то выход иначе создаем
            if(m_Mutex) return FALSE;
            m_Mutex = CreateMutex(NULL,TRUE,_T("MutexID"));
            1 пользователей читают эту тему (1 гостей и 0 скрытых пользователей)
            0 пользователей:


            Рейтинг@Mail.ru
            [ Script execution time: 0,0222 ]   [ 15 queries used ]   [ Generated: 21.05.24, 18:48 GMT ]