Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2002.11.11;
Скачать: [xml.tar.bz2];

Вниз

Как предотвратить закрытие приложения   Найти похожие ветки 

 
Vovik   (2002-10-01 16:40) [0]

Уважаемые мастера, подскажите как запустить внешнее приложение и впоследствии обрабатывать его закрытие . И можно ли в этот момент передать ему нажатие клавиши?


 
Vovik   (2002-10-01 16:42) [1]

На первую часть нашел ответ:
ShellExecute(handle, "open","proga.exe", PCHAR("параметр"), nil, SW_SHOWNORMAL);

Подскажите как узнать его handle ? и возможно ли в момент его закрытия передать нажатие клавиши в нем?


 
Vovik   (2002-10-01 17:01) [2]

Еще вопрос: Можно ли имея handle окна изменить его вид, точнее,
можно ли убрать кнопку закрытия окна (крестик), что бы пользователь мог выйти из приложения только корректно, а не по тупому закрытию окна.


 
korzh   (2002-10-01 17:12) [3]

ну что ты так, даже в help не заглянул...

HINSTANCE ShellExecute(

HWND hwnd, // handle to parent window
LPCTSTR lpOperation, // pointer to string that specifies operation to perform
LPCTSTR lpFile, // pointer to filename or folder name string
LPCTSTR lpParameters, // pointer to string that specifies executable-file parameters
LPCTSTR lpDirectory, // pointer to string that specifies default directory
INT nShowCmd // whether file is shown when opened
);

Handle - это дескриптор HWND твоего окна (или св-во Handle формы), на случай если оно будет получать всякие MessageBox"ы от запускаемого процесса....

а чтоб дождаться его закрытия есть ф-ция WaitForSingleObject
она подвесит твой процесс на заданное к-во миллисекунд или до заверш. просесса с заданным HINSTANCE. а чтоб приложение не висло лучше создать свой TThread и запускать ее там.
хотя наверное есть способ проще......
описание см в помощи


 
korzh   (2002-10-01 17:14) [4]

попробуй SetWindowLong - оно может поменять стиль окна



Страницы: 1 вся ветка

Форум: "WinAPI";
Текущий архив: 2002.11.11;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.008 c
14-34225
STANT
2002-10-16 17:18
2002.11.11
Как отсортировать БД?


1-34058
b-Ars
2002-10-24 12:29
2002.11.11
Как модально показать форму из DLL


1-34108
AlexVit
2002-10-31 08:21
2002.11.11
не могу правильно указать тип переменных для функций из одной DLL


14-34241
Beginner-Designer
2002-10-22 20:01
2002.11.11
Нужна компанента для C++ Builder по горячим клавишам


3-33904
Zloy
2002-10-22 02:47
2002.11.11
Приветствую!!! Полное Сохранение таблицы Парадокс на диск





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский