![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Можно ли через CreateProcess передать Word файл для открытия
alexsc © (2002-12-17 13:37:00)Можно ли через CreateProcess передать Word файл для открытия. Т.е. чтобы открывал после открытия нужный мне файл, а не пустой. Спасибо.
Внук (2002-12-18 10:24:00) [1]Можно и с помощью CreateProcess :)
procedure TForm1.Button1Click(Sender: TObject);
var StartupInfo:TStartupInfo;
ProcessInfo:TProcessInformation;
begin
FillChar(StartupInfo,Sizeof(StartupInfo),0);
StartupInfo.cb:=Sizeof(StartupInfo);
CreateProcess(nil,"C:\Program Files\Microsoft Office\Office\winword.exe c:\shablon\printing.doc",nil,nil,false,NORMAL_PRIORITY_CLASS,nil,nil,StartupInfo,ProcessInfo);
end;
Об этом у Рихтера подробно написано. Особенности использования первого и второго параметров.
alexsc (2002-12-17 17:55:00) [2]Спасибо, то что нужно!
Игорь Шевченко (2002-12-17 17:35:00) [3]ShellExecuteEx
alexsc (2002-12-17 17:03:00) [4]Есть у кого-нибудь мысли? Пишите. Жду помощи
alexsc (2002-12-17 14:26:00) [5]Вся проблема в том, что мне нужно отслеживать когда закроется Word, запущенный этой программой, чтобы нельзя было двигаться дальше. После запуска Word стоит WaitForSingleObject. Передавать туда параметр я могу только узнав его при запуске Worda через CreateProcess.
bak (2002-12-17 14:16:00) [6]а не проще ли действительно так
winexec("C:\Program Files\Microsoft Office\Office\winword.exe c:\printing.doc", SW_SHOWNORMAL);
???
alexsc (2002-12-17 14:05:00) [7]Пробовал сделать и так, но не запускает файл!
Открывает пустую страницу.
CreateProcess("C:\Program Files\Microsoft Office\Office\winword.exe","c:\shablon\printing.doc",nil,nil,false,CREATE_NEW_CONSOLE or NORMAL_PRIORITY_CLASS,nil,nil,StartupInfo,ProcessInfo);
Хотя ShellExecute открывает его нормально
Anatoly Podgoretsky (2002-12-17 13:46:00) [8]lpCommandLine