Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: Запуск файла!!! Shell не работает! Добавлено: 16.05.03 16:40  

Автор вопроса:  Vano

Собственно сабж. Нужно запустить exe-шник, который выполняет некоторые действия (конвертирует файлы, перебрасывает в другогй каталог и выгружается). Пробовал через Shell, OpenProcess, CreateProcess - не работает, вернее консольное окно открывается, а программка никаких действий не производит. Причем если запускать bat-ник в котором сначала делается текущим каталог с программкой, а затем в этом же bat-нике запускается программка, то все работает. Есть какие-нибудь идеи?

Ответить

  Ответы Всего ответов: 7  

Номер ответа: 1
Автор ответа:
 Миха



ICQ: 394243 

Вопросов: 20
Ответов: 151
 Web-сайт: www.visualbasic.boom.ru
 Профиль | | #1
Добавлено: 16.05.03 17:12
А как именно ты через shell пробовал.Через Shell можно файл exe запустить.Я сам запускал

Ответить

Номер ответа: 2
Автор ответа:
 Padre



ICQ: 346632205 

Вопросов: 25
Ответов: 215
 Web-сайт: localhost
 Профиль | | #2
Добавлено: 16.05.03 17:14

Так может этому кзешнику нужно передавать какие то параметры коммандной строки чтобы он начал работать

Ответить

Номер ответа: 3
Автор ответа:
 Vano



Вопросов: 4
Ответов: 8
 Профиль | | #3 Добавлено: 16.05.03 17:16

До этой программки у меня тоже все exe-шники запускались -)))

А запускал я по разному:1) Shell path & "prog.exe",0

2)Через специально написанную функцию:

Public Function Execute(ApplicationName As String, Optional CommandLine As String = "") As Long

Dim lpStartupInfo As STARTUPINFO

Dim lpProcessInformation As PROCESS_INFORMATION

lpStartupInfo.cb = Len(lpStartupInfo)

lpStartupInfo.lpReserved = vbNullString

lpStartupInfo.lpTitle = vbNullString

lpStartupInfo.wShowWindow = False

Dim i As Long

i = CreateProcess( _

vbNullString, _

ApplicationName & " " & CommandLine, _

vbNullString, _

vbNullString, _

1, _

0, _

vbNullString, _

vbNullString, _

lpStartupInfo, _

lpProcessInformation _

)

If i <> 0 Then

Execute = lpProcessInformation.hProcess

Else

Execute = 0

End If

End Function

Ответить

Номер ответа: 4
Автор ответа:
 Vano



Вопросов: 4
Ответов: 8
 Профиль | | #4 Добавлено: 16.05.03 17:17

Padre:

Да ничего ему не надо: по Enter из Far`a работает

Ответить

Номер ответа: 5
Автор ответа:
 Padre



ICQ: 346632205 

Вопросов: 25
Ответов: 215
 Web-сайт: localhost
 Профиль | | #5
Добавлено: 16.05.03 18:13
попробуй использовать curdir()

Ответить

Номер ответа: 6
Автор ответа:
 Vano



Вопросов: 4
Ответов: 8
 Профиль | | #6 Добавлено: 16.05.03 18:13

Всем спасибо. Сам нашел: оказывается нужно было чтобы текущим путем был путь с exe-шником, то есть программке был необходим рабочий каталог -)))

Ответить

Номер ответа: 7
Автор ответа:
 Миха



ICQ: 394243 

Вопросов: 20
Ответов: 151
 Web-сайт: www.visualbasic.boom.ru
 Профиль | | #7
Добавлено: 19.05.03 12:04

Все гениальное просто!

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам