Jak poczekać na otwierany program?

0

Otwieram Worda taką procedurką:

ShellExecute(GetDesktopWindow(), "open", "winword", NULL, NULL, SW_SHOWNORMAL);

i następnie chce go przesunąć w określone miejsce ekranu. I tu właśnie pojawia się problem: do zmiany pozycji okna potrzebny mi jest jego uchwyt a nie wiem kiedy okno się otworzy żeby go pobrać.
Sleep'a dać nie mogę bo otwarcie okna trwa różną ilość czasu nawet na tej samej maszynie. Możnaby do tego użyć CreateProcess ale wtedy trzebaby jakoś znaleźć gdzie Word jest zainstalowany a nie chcę przeszukiwać dysku albo połowy rejestru. Jak to zrobić?

0

A dlaczego trza przeszukiwac dysk :>
U mnie jakos wpisuje w cmd -> winword i sie on odpala, wniosek z tego ze katalog z exe'cami Office jest dodawany do PATH.
Wiec nic szukac nie trzeba.

0

U mnie jakos wpisuje w cmd -> winword i sie on odpala

U mnie tak nie jest - wniosek - nie zawsze mamy ustawione scieżki. No ale zbaczamy z tematu. :)

0

[code]LOCAL_MACHINE.Software.Microsoft.Office.Word.InstallRoot.Path[/code]

To chyba nie jest polowa rejestru?

Poza tym mozesz szukac w loopie while.

1 użytkowników online, w tym zalogowanych: 0, gości: 1