![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| m1nder |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 29 Регистрация: 23.9.2009 Где: Нижний Новгород Репутация: нет Всего: нет |
Доброго времени! Подскажите, в чем проблемка. Не shellexecute отрабатывает некоррктно(ошибок нет, просто не происходит копирование, как будто параметры xcopy не передаются), вот код:
|
|||
|
||||
| Данкинг |
|
|||
![]() Yersinia pestis ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 8302 Регистрация: 7.11.2006 Где: მოსკოვი Репутация: 9 Всего: 130 |
Что такое "CoilManager_QUALITY_REP_*.pdf" ?
-------------------- There's nothing left but silent epitaphs. |
|||
|
||||
| m1nder |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 29 Регистрация: 23.9.2009 Где: Нижний Новгород Репутация: нет Всего: нет |
ShellExecute из программы отрабатывает корректно, а из службы не хочет нормально работать!!!
|
|||
|
||||
| Keeper89 |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2580 Регистрация: 26.2.2009 Репутация: 20 Всего: 58 |
Используйте CreateProcess вместо ShellExecute.
Линк |
|||
|
||||
| m1nder |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 29 Регистрация: 23.9.2009 Где: Нижний Новгород Репутация: нет Всего: нет |
Благодар, за ответ! Вы мне очень помогли! Буду переделывать.
|
|||
|
||||
| m1nder |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 29 Регистрация: 23.9.2009 Где: Нижний Новгород Репутация: нет Всего: нет |
Переделал, но проблема не исчезла, возможно служба перекрывает кислород моей процедуре! Вот код:
|
|||
|
||||
| MetalFan |
|
|||
![]() Аццкий Сотона ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3815 Регистрация: 2.10.2006 Где: Moscow Репутация: 62 Всего: 128 |
хм, возможно службе прав не хватает, чтобы шариться по сети...
-------------------- There are always someone smarter than you... |
|||
|
||||
| m1nder |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 29 Регистрация: 23.9.2009 Где: Нижний Новгород Репутация: нет Всего: нет |
Нет, я даже notepad запускал с параметрами, тоже ничего. Но это может объяснить: нужно lpDesktop поставить. Процесс я отслеживал - он запускается, но ничего не делает!!!
|
|||
|
||||
| kami |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1806 Регистрация: 25.8.2007 Где: Санкт-Петербург Репутация: 23 Всего: 72 |
Ну, то что "ничего" - это ничего не значит. Либо ошибка, либо блокнот запустился, но на десктопе сервисов (т.е. процесс notepad есть, но не виден). Продолжим тем, что CreateProcess - это конечно, хорошо, но для его использования служба должна быть интерактивной, т.е. при ее создании нужно указывать
Посему лучшим вариантом для создания из сервиса процесса на активном десктопе будет комбинация сервис+десктопное приложение, которые будут общаться между собой любым из методов IPC (сообщения отметаются сразу - SendMessage и иже с ними не работают между разными десктопами, оконными станциями и сессиями). Если же такой возможности нет, то может спасти CreateProcessAsUser (код сейчас поищу у себя в закромах). |
|||
|
||||
| kami |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1806 Регистрация: 25.8.2007 Где: Санкт-Петербург Репутация: 23 Всего: 72 |
несколько неправильно написал - служба должна быть интерактивной, если запускаемый процесс должен взаимодействовать с пользователем. При запуске через CreateProcessAsUser интерактивность необязательна. Afair. Нашел файл (вернее, несколько), писал давно, так что... не пинать за неразборчивый почерк и лишние телодвижения Это сообщение отредактировал(а) kami - 5.11.2009, 01:06 Присоединённый файл ( Кол-во скачиваний: 8 )
ExecuteOnSession.zip 8,48 Kb |
|||
|
||||
| m1nder |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 29 Регистрация: 23.9.2009 Где: Нижний Новгород Репутация: нет Всего: нет |
Вот при таком коде xcopy видна в процессах на секунду, зетем опять вылетает(естественно своих функций не выполняет):
|
|||
|
||||
| Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
А ты пробовал запускать xcopy непосредственно из системы с твоими параметрами?
|
|||
|
||||
| CodeMonkey |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1839 Регистрация: 24.6.2008 Где: Россия, Тверь Репутация: 38 Всего: 89 |
Откуда куда копируем-то? Диск случайно не сетевой? Если да, то откуда же ему взяться в контексте службы?
-------------------- Опытный программист на C++ легко решает любые не существующие в Паскале проблемы. |
|||
|
||||
| m1nder |
|
||||
|
Новичок Профиль Группа: Участник Сообщений: 29 Регистрация: 23.9.2009 Где: Нижний Новгород Репутация: нет Всего: нет |
Да, конечно я пробовал. Все работает!
Так как мне его туда воткнуть? |
||||
|
|||||
| Keeper89 |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2580 Регистрация: 26.2.2009 Репутация: 20 Всего: 58 |
Можно через net use:
|
|||
|
||||
![]()
|
| Правила форума "Delphi: Общие вопросы" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |