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

Вниз

Определить статутус программы.   Найти похожие ветки 

 
Cara ©   (2006-10-20 11:07) [0]

Добрый день. Требуется определить работает (т.е. запущена ли) программа или нет.


 
palva ©   (2006-10-20 11:10) [1]

А если посмотреть, какие процессы работают в системе?


 
Elen ©   (2006-10-20 11:10) [2]


>  (т.е. запущена ли)

CreateToolhelp32Snapshot,


 
Elen ©   (2006-10-20 11:17) [3]


> Cara

Добавлю :
var p:PROCESSENTRY32;ct:cardinal;
begin
ct:=CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);
Process32First(ct,p);
  ListBox1.Items.Append(string(p.szExeFile));
while Process32Next(ct,p) do
  ListBox1.Items.Append(string(p.szExeFile));
end;

В списке будут имена экзешников.


 
Cara ©   (2006-10-20 12:14) [4]

Надо поменять файл на рабочей станции. Для этого надо знать, работает ли оператор с программой. Если да, то попросить его выключить программу. Ежели нет, то просто заменить файл.


 
Cara ©   (2006-10-20 12:15) [5]

Надо поменять файл на рабочей станции. Для этого надо знать, работает ли оператор с программой. Если да, то попросить его выключить программу. Ежели нет, то просто заменить файл.


 
Anatoly Podgoretsky ©   (2006-10-20 12:38) [6]

Для этого не надо определять статус, надо просто менять и обрабатывать ошибку.


 
Elen ©   (2006-10-20 12:53) [7]


>  Для этого надо знать, работает ли оператор с программой

Если программа твоя то можно встроить в нее Сокеты и общаться, давать команды. Намек ясен?


 
Cara ©   (2006-10-20 17:36) [8]

Спасибо. Но всё немного не так. Есть магазин. Там 2 кассы. БД лежит на сервере. Кассы обращаются к ней. Программа постоянно дорабатывается,и очень часто приходиться ездить с флешкой и менять экзешники на кассах. Это очень неудобно, так как приходиться тратить время на дорогу. Есть возможность пересылать фалы через ФТП. Надо сделать прогу, которая будет сама получать файлы с сервера, отключать (давать операторам сообщение) работающие кассы, и менять экзешники. Всё, кроме определения работающего экзешника уже сделал.


 
Чародей ©   (2006-10-20 17:48) [9]


> Есть магазин. Там 2 кассы. очень часто приходиться менять экзешники на кассах


И все это время магазин работает на не рабочих екзешниках!!!??? Или в екзешниках обнавляеся прайс !!! :)


 
Ученик чародея ©   (2006-10-20 19:52) [10]

Тогда попробуй отрыть екзешник на чтение с эксклюзивными правами, а при екзепшене выдавай сообщение - "Закрыть программу мигом, шеф эти штуки вырвет..."


var FStr:TFileStream;

try
  FStr:=TFileStream.Create("Filename",fmOpenRead or fmShareExclusive);
 FStr.Free;
except on E:Exception do
begin
 FStr.Free;
 MessageBox(Application.Handle, "If you not close program, so that your BOSS get your EGGS!!!","Attention, attention!!!",MB_OK or MB_ICONWARNING);
end;


 
Ketmar ©   (2006-10-20 20:08) [11]

в данном случае не "eggs", а "balls".


 
Cara ©   (2006-10-24 16:55) [12]

Если оператор работает с программой, я естественно не могу удалить exe файл, мне надо проверить, программа запущена, или нет.


 
Anatoly Podgoretsky ©   (2006-10-24 17:04) [13]

Не надо, просто удаляй, если не получится, то работает, при условии, что у тебя есть права на удаление.


 
Cara ©   (2006-10-24 17:18) [14]

1. Windows не даст. Ошибка: Не удаётся удалить приложение, возможно оно занято другой программой или пользователем и т.д. 2. Это не корректно по отношению к Б.Д.



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

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

Наверх





Память: 0.48 MB
Время: 0.055 c
15-1161895131
Anatoly Podgoretsky
2006-10-27 00:38
2006.11.12
APC клиент чтения форумов


15-1161508815
Cyrax
2006-10-22 13:20
2006.11.12
Патч для Promt XT Family от лицензионного соглашения


15-1161842790
kan
2006-10-26 10:06
2006.11.12
кодировка в PHP


15-1161373383
Cyrax
2006-10-20 23:43
2006.11.12
Установка Windows XP с USP


3-1158049183
Oleg2006
2006-09-12 12:19
2006.11.12
Delphi & AbsolutDatabase





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский