· Начало · Отвђтить · Статистика · Поиск · FAQ · Правила · Установки · Язык · Выход · WASM.RU · Noir.Ru ·

 WASM Phorum —› WASM.ZEN —› Как в Perl'е асинхронно запустить Win32 приложение?

Посл.отвђт Сообщенiе


Дата: Июн 25, 2004 22:24:52

Сабж.


Дата: Июн 25, 2004 22:39:15

У меня получилось только одним способом:
#!/usr/bin/perl
chdir("C:/Program Files/Opera");
open(MY,"Opera.exe|");


Дата: Июн 25, 2004 23:13:40

И ты совершенно прав. Другие способы включают в себя fork, exec, wait, waitpid, но все это не реализовано под Win32, если я не ошибаюсь...
Альтернативный вариант состоит в использовании Win32::Process.
use Win32::Process;
Win32::Process::Create($Process, 
        "c:\\nt\\system32\\notepad.exe",
        "notepad",
        0,
        DETACHED_PROCESS,
        ".") || die "Create: $!";


notepad будет вызван асинхронно.
Более подробно см. в книге "Learning Perl on Win32 Systems"


Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.065