Запуск-EXE-через-веб-сервисов - PullRequest
0 голосов
/ 14 мая 2009

Я пытаюсь вызвать консольное приложение Windows в моем веб-сервисе. Если я использую его как локальную службу, то есть в том же решении, оно работает отлично, но если я пытаюсь вызвать его через веб-службу, размещенную как IIS localServer, он не вызывает ее. Я думаю, что это проблема безопасности. Я новичок в веб-сервисе и вызываю приложение, используя

           Process.Start() function...

И еще одна вещь, если это служба Windows, она прекрасно работает ....

Любая идея ???

Ответы [ 2 ]

3 голосов
/ 14 мая 2009

рассматривать вашу консоль как отдельный проект. Сначала убедитесь, что это работает.

Я сделал то, что вы описали в веб-приложении asp.net. Я проверил это; тот же код отлично работает в веб-сервисе. Хитрость здесь в том, что "startInfo.UseShellExecute = False"

В этом примере параметры передаются в консольное приложение, которое выполняется во время выполнения. (извините, это в VB).

Dim startInfo As System.Diagnostics.ProcessStartInfo
Dim pStart As New System.Diagnostics.Process

startInfo = New System.Diagnostics.ProcessStartInfo("C:\Inetpub\wwwroot\KPIMi\Annotation Editor\Annotation_Console.exe")
startInfo.Arguments = strServerName & "-" & strPrimaryKey & "-" & txtStart.Text
startInfo.UseShellExecute = False

pStart.StartInfo = startInfo
pStart.Start()

pStart.WaitForExit () 'Ваш код будет остановлен до тех пор, пока исполняемый файл не будет выполнен.

Надеюсь, это поможет.

0 голосов
/ 14 мая 2009

имеет ли учетная запись пользователя IUSR_ * разрешение на запуск консольного приложения?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...