Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Узнать, запущен ли Word.


AlexanderMS ©   (2007-10-13 17:32:00) 

Как лучше сделать?
Можно через FindWindow, но ведь есть более эффективный способ?


AlexanderMS   (2007-10-14 15:12:00) [1]

Всем большое спасибо.


Dmitry S   (2007-10-14 06:34:00) [2]


> hahol_64_rus   (13.10.07 19:11) [5]

Для чего? Не помощью мютекс создать?:)


Johnnnnnn   (2007-10-13 21:23:00) [3]

word: OleVariant;

word:=Getactiveoleobject('word.application');
if word<>0 then showmessage('word');


AlexanderMS   (2007-10-13 19:49:00) [4]


> hahol_64_rus   (13.10.07 19:11) [5]

Спасибо, но не вижу разницы в принципе с FindWindow, и не совсем оптимально.


hahol_64_rus   (2007-10-13 19:11:00) [5]

var pbuff:array [0..127] of Char;
var dWin:Hwnd;
var st:string;

dWin:=GetWindow(application.Handle,GW_HWNDFIRST);
 while dWin <>0 do
   begin
     if (dWin<>Application.Handle) and
     (GetWindow(dWin,GW_OWNER)=0) and
     (GetWindowText(dWin,pbuff,sizeof(pbuff))<>0)
     then
       begin
         GetWindowText(dWin,pbuff,sizeof(pbuff));
         st:=string(pbuff);
           if st='Hahol_Smile_player' then
             begin
               st:='"Hahol_Smile_player уже запущенн"';
               Application.MessageBox(Pchar(st),'',MB_OK);
               exit;
             end;
       end;
     dWin:=GetWindow(dWin,GW_HWNDNEXT);
   end;

я вот так делал когда хотел узнать запущен ли мой плеер (hahol_smill_palyer)


EvS   (2007-10-13 18:52:00) [6]

Так и называется-'Word.Application'


AlexanderMS   (2007-10-13 18:35:00) [7]


> Что значит "эффективный"?

Значит, не возиться с Caption'ом найденного окна, да и мало ли что, вдруг в заголовке не будет фразы "Microsoft Word" :)


> Getactiveoleobject?


Спасибо, а класс Word'a как называется (в параметре)?


EvS   (2007-10-13 18:00:00) [8]

Getactiveoleobject?


Ping   (2007-10-13 17:52:00) [9]

Что значит "эффективный"?


Наверх

Титульная страница Поиск, карта сайта Написать письмо