|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
16.09.2009, 20:31 | #1 |
Пользователь
Регистрация: 05.11.2008
Сообщений: 16
|
Запуск chm файла из под сервиса
Добрый день!
У меня возникла проблема с запуском файла справки chm из под сервиса.Пробовал запускать так: WinExec(PChar('hh '+Application.HelpFile+'::/RM_About_Welcome.htm'), SW_SHOW) и так ShellExecute(0, nil, PChar(Application.HelpFile), nil, PChar(ExtractFilePath(Application.H elpFile)), 1); все эти методы работают только тогда когда программа запущенна как обычное приложение, но из под сервиса отказываются работать. Может кто нибудь сталкивался с подобной проблемой ? |
16.09.2009, 21:36 | #2 |
Новичок
Джуниор
Регистрация: 16.09.2009
Сообщений: 4
|
Предлагаю суперрешение: написать консольную прогу "sheller.exe", которая в качестве первого параметра получает то, что надо shell'ить. Дальше исполнять её sheller.exe my.chm
Паскаль жил, Паскаль жив, Паскаль будет жить
|
16.09.2009, 21:43 | #3 |
я получил эту роль
Старожил
Регистрация: 25.05.2007
Сообщений: 3,694
|
CreateProcess C:\WINDOWS\hh.exe с именем chm-файла первым параметром
пыщь
|
17.09.2009, 06:12 | #4 |
Пользователь
Регистрация: 05.11.2008
Сообщений: 16
|
Я делал и консольную программу и CreateProcess, но все они стартуют от пользователя SYSTEM и тоже не открывают этот файл
Также я пробовал запускать CreateProcessAsUser процесс запускается в контексте безопасности текущего пользователя но тоже от пользователя SYSTEM. А вот как его запустить от текущего пользователя я пока не знаю... |
17.09.2009, 14:31 | #5 |
Новичок
Джуниор
Регистрация: 16.09.2009
Сообщений: 4
|
Это какая операционная система вообще??
Паскаль жил, Паскаль жив, Паскаль будет жить
|
17.09.2009, 14:54 | #6 |
Пользователь
Регистрация: 05.11.2008
Сообщений: 16
|
Windows XP and Windows Vista and Windows Server 2008
|
18.09.2009, 16:13 | #7 |
я получил эту роль
Старожил
Регистрация: 25.05.2007
Сообщений: 3,694
|
Оно запускается, но на "десктопе винлогона".
Startupinfo.lpDesktop := 'winsta0\default', и/или SetThreadDesktop (вызывать до создания окон!)
пыщь
|
18.09.2009, 16:33 | #8 |
Форумчанин
Регистрация: 28.09.2008
Сообщений: 344
|
Проблему можно решить выставив у сервиса
Код:
|
21.09.2009, 09:02 | #9 |
Пользователь
Регистрация: 05.11.2008
Сообщений: 16
|
Всем спасибо за советы... но ни один из них не работает
Сервис и так был интерактивный, все работает кроме запуска справочных файлов. И создание процесса работает, но только если запускать его не из под сервиса.. Для создания процесса я пробовал использовать пример из JEDI он запускает любой exe коме hh.exe. Код:
Код:
|
23.10.2014, 20:58 | #10 |
Регистрация: 20.09.2012
Сообщений: 5
|
Как из приложения запустить CHM-файл
В среде Windows XP можно было установить ActiveX компонент HHopen в панель компонентов, затем использовать его методы Open и Close. В среде Windows 7 такая библиотека отсутствует!
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Создание hlp или chm HELP файла | Dmitriy_ZDO | Компоненты Delphi | 6 | 12.06.2009 23:56 |
запуск GetForegroundWindow из под LocalSystem | biohazard123 | Общие вопросы .NET | 0 | 05.03.2009 10:21 |
запуск сервиса и CreateProcessWithLogonW | sysyman | Win Api | 8 | 22.01.2009 23:01 |
Как заставить открыться из под Дельфи CHM файл | grenles | Общие вопросы Delphi | 5 | 09.10.2008 13:01 |
Запуск программы из под лоадера. | BoryaPop | Общие вопросы Delphi | 2 | 11.03.2008 08:11 |