On-line: гостей 1. Всего: 1 [подробнее..]
АвторСообщение
администратор




Пост N: 855
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 05.08.08 17:57. Заголовок: Как запретить запуск одной проги несколько раз ?


Есть какая то функция в Xharbour ?

PS
Вроде был такой вопрос , но пока не найду........

Спасибо: 0 
Профиль
Ответов - 34 , стр: 1 2 All [только новые]


постоянный участник




Пост N: 43
Зарегистрирован: 06.02.07
ссылка на сообщение  Отправлено: 12.08.08 00:18. Заголовок: Понял. Напишу, как п..


Понял. Напишу, как получится. "Кто любит более тебя - напишет более меня" :)

Спасибо: 0 
Профиль



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 17.08.08 07:48. Заголовок: gustow пишет: Понял..


gustow пишет:

 цитата:
Понял. Напишу


В связке харбор+FWH многие используют UEStudio
По ссылке ниже пример описпния , как ее использовать.
Может натолкнет на нвые мысли или чем поможет :))

http://www.atzwanger.com/FWHRAD/FWHRAD.html



Спасибо: 0 
постоянный участник




Пост N: 645
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 18.08.08 10:04. Заголовок: Dima пишет: Где взя..


Dima пишет:

 цитата:
Где взять доку по WINAPI на русском ?


Могу выслать на ящик.

Спасибо: 0 
Профиль



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 18.08.08 10:28. Заголовок: Andrey пишет: Могу ..


Andrey пишет:

 цитата:
Могу выслать на ящик


Благодарность не будет знать границ .... :))))
mkizev////mail.ru

Спасибо: 0 
администратор




Пост N: 867
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 18.08.08 11:12. Заголовок: Andrey пишет: Могу ..


Andrey пишет:

 цитата:
Могу выслать на ящик


Буду ждать
тёрк-тёрк////тёрк.ru ;)

Спасибо: 0 
Профиль
постоянный участник




Пост N: 646
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 19.08.08 16:24. Заголовок: Dima А кинь пожалу..


Dima

А кинь пожалуйста примером который ты сделал на чистом хХарборе !



Спасибо: 0 
Профиль
администратор




Пост N: 868
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 20.08.08 10:06. Заголовок: Andrey пишет: А кин..


Andrey пишет:

 цитата:
А кинь пожалуйста примером который ты сделал на чистом хХарборе !


Примером чего Андрей ?

Спасибо: 0 
Профиль
постоянный участник




Пост N: 647
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 20.08.08 10:20. Заголовок: Dima пишет: Примеро..


Dima пишет:

 цитата:
Примером чего Андрей ?


Примером: "Как запретить запуск одной проги несколько раз ?"
или ты его не сделал ?


Спасибо: 0 
Профиль
администратор




Пост N: 869
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 20.08.08 11:05. Заголовок: if isexerunnin..





 цитата:

Proc Main
if isexerunning("test")
? "Прога уже запущена"
quit
endif
return nil

#pragma BEGINDUMP
#include <windows.h>
#include <hbapi.h>
#include <shlobj.h>
HB_FUNC( ISEXERUNNING ) // ( cExeNameCaseSensitive ) --> lResult
{
HANDLE hMutex = CreateMutex( NULL, TRUE, (LPTSTR) hb_parc(1) );
hb_retl( GetLastError() == ERROR_ALREADY_EXISTS );
ReleaseMutex( hMutex );
}
#pragma ENDDUMP





Спасибо: 0 
Профиль
постоянный участник




Пост N: 648
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 20.08.08 12:28. Заголовок: Спасибо Дима ! :sm3..


Спасибо Дима !

А как автоматически определять имя проги ?
Если она будет не "test" ?

Спасибо: 0 
Профиль
администратор




Пост N: 870
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 20.08.08 12:43. Заголовок: Andrey пишет: А как..


Andrey пишет:

 цитата:
А как автоматически определять имя проги ?
Если она будет не "test" ?


Ну ты ведь знаешь заранее как ты обзовешь EXE шник ;)
Хотя возможно есть такая функция в CT EXENAME()

Спасибо: 0 
Профиль
администратор




Пост N: 871
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 20.08.08 12:44. Заголовок: Andrey По ходу в пр..


Andrey
По ходу в присланной тобой докуметации я так и не нашел функции CreateMutex()

Спасибо: 0 
Профиль
постоянный участник




Пост N: 649
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 20.08.08 23:05. Заголовок: А что это за функция..


А что это за функция ?
Что ты хочешь сделать ?

Спасибо: 0 
Профиль
постоянный участник




Пост N: 654
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 01.09.08 13:21. Заголовок: Сделал прогу, только..


Сделал прогу, только не могу поднять "запущенную ранее программу" !
Как получить "хендл" запущенной ранее программы ?

===========================================================
#define MYPROGRAM " Программа проверки запуска ! "

Procedure Main
LOCAL nI:=0, nKey, hWnd := GetForegroundWindow()
LOCAL cNameWin, cExeRun := SUBSTR(EXENAME(), RAT("\",EXENAME())+1 )

IF hb_gt_version() == "WVT"
// Если используется граф.терминал GTWVT.LIB
cNameWin := HB_OEMTOANSI( MYPROGRAM )
ELSE
cNameWin := MYPROGRAM
ENDIF
GTInfo( 26, cNameWin )

SETCOLOR("15/2")
CLEAR SCREEN
? "Номер окна:", hWnd
? "Имя ЕХЕ-файла: ", cExeRun

if isexerunning(cExeRun)
ALERT("Прога уже запущена !")
// Как сделать переключение на ренее запущенную программу ?
MAXIMIZE( hWnd ) // - не работает
tone(400,2)
quit
endif

DO WHILE .T.
nKey := INKEY(1)
IF nKey == 27 // K_ESC
EXIT
ENDIF
@ 4,2 SAY "ESC-выход Режим ожидания:"
?? nI++
ENDDO

return

#pragma BEGINDUMP
#include <windows.h>
#include <hbapi.h>
#include <shlobj.h>

HB_FUNC( ISEXERUNNING ) // ( cExeNameCaseSensitive ) --> lResult

HANDLE hMutex = CreateMutex( NULL, TRUE, (LPTSTR) hb_parc(1) );
hb_retl( GetLastError() == ERROR_ALREADY_EXISTS );
ReleaseMutex( hMutex );


HB_FUNC( GETFOREGROUNDWINDOW )

hb_retnl( (LONG) GetForegroundWindow() );


HB_FUNC( MINIMIZE )

ShowWindow( (HWND) hb_parnl(1), SW_MINIMIZE );


HB_FUNC( MAXIMIZE )

ShowWindow( (HWND) hb_parnl(1), SW_RESTORE );


#pragma ENDDUMP
==================================================


Спасибо: 0 
Профиль
Ответов - 34 , стр: 1 2 All [только новые]
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 3
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет