Здравствуйте, alexora, Вы писали:
A>Вот мне в сервисе NT надо вызвать свою софтину. Через что вызывать ? Я пробовал через ShellExecute — Ничего не получилось. С CreateProcess получилось вызвать софтину которая просто в файл записывает что она запустилась. Если добавить MessageBox в ней то вываливается.
Дело в том что сервисы запускаются в так называемом DeskTop0, а все пользовательские программы в DeskTop1. Ищите в MSDN -- windowstation, desktop...
То есть теоретически вы должны из сервиса (из его WindowStationXX\DesktopXX) найти Ваш (пользовательный) десктоп, получить его security_deskriptor и создать дочерний процесс в контенте вашего десктопа... Практически возможно но очень геморройно и не правильно. Сервис по определению НЕ ВЗАИМОДЕЙСТВУЕТ с пользователем (кроме как через Service Control Manager) и поэтому должен обходиться своими силами или во всяком случае не использовать графику...
Regards...
... << RSDN@Home 1.1.3 stable >>