Visual Basic, .NET, ASP, VBScript
 

   
   
     

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

Страница: 1 |

 

  Вопрос: Работа с командной строкой Добавлено: 02.07.02 12:41  

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

Помогите с кодом, т.е надо в командной строке ввести

prog.exe -? и получить в этом же окне (Dos) краткую справку.

В качестве примера - если запустить arj.exe без параметров появляется краткая справка.

Ответить

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

Номер ответа: 1
Автор ответа:
 User Unknown



Вечный Юзер!

ICQ: uu@jabber.cz 

Вопросов: 120
Ответов: 3302
 Профиль | | #1 Добавлено: 02.07.02 12:57

Ты на VB что ли консольное приложение пишешь?

Len$(CommandLine)<>""

как то так...

Ответить

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



Вопросов: 4
Ответов: 2
 Профиль | | #2 Добавлено: 02.07.02 13:15

Да пишу для себя прогу для выполнения всевозможных мелких действий (чаво распаковать, чаво отправить через мыло, кому сообщение кинуть на другой комп т.д.. То есть внутри проекта только модули без форм и все это работает через командную строку с параметрами (prog.exe -a, prog.exe -b и т.д.).

Сейчас стал вопрос о том что иногда стал забывать какие параметры для чего нужны и хочу вмонтировать в прогу мелких help который выводил бы текст в консоль.

Ответить

Номер ответа: 3
Автор ответа:
 User Unknown



Вечный Юзер!

ICQ: uu@jabber.cz 

Вопросов: 120
Ответов: 3302
 Профиль | | #3 Добавлено: 02.07.02 13:23

А зачем тебе именно консоль? Выводи через MsgBox и все...:) Как это делает regsrv32.exe или как его там... Так проще и приятнее. А то много хелпа напишешь, надо будет консоль прокручивать, на Х нажимать... не спортивно это:)

Ответить

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



Вопросов: 84
Ответов: 453
 Профиль | | #4 Добавлено: 02.07.02 13:39

Работать в VB с консолью приходиться через API..

Это очень гемморойно, для этого используються функции:

Declare Function AllocConsole Lib "kernel32" () As Long

Declare Function FreeConsole Lib "kernel32" () As Long

Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long

Declare Function GetStdHandle Lib "kernel32" (ByVal nStdHandle As Long) As Long

Declare Function WriteConsole Lib "kernel32" Alias "WriteConsoleA" (ByVal hConsoleOutput As Long, lpBuffer As Any, ByVal nNumberOfCharsToWrite As Long, lpNumberOfCharsWritten As Long, lpReserved As Any) As Long

Declare Function SetConsoleCtrlHandler Lib "kernel32" (ByVal HandlerRoutine As Long, ByVal Add As Long) As Long

С помошью этих функций можно создавать новые консоли, а также работать в "унаследованной" консоли.

В твоем случае надо работать именно в "унаследованной", а сделать это на VB не так уж и просто..

Дело в том, что VB не поддерживает создание консольных приложений, можно конечно трахаться через API.

Но поверь, овчинка выделки не стоит..

Да и хитрые глюки иногда вылазят...

Ответить

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



Вопросов: 9
Ответов: 112
 Профиль | | #5 Добавлено: 02.07.02 17:05

Согласен с alex'ом. Лучше сообщения выводит через MsgBox и тратить время на консоль.

К тому же тогда придется следить чтобы прога запускалась именно из консоли а не как ярлык например ...

Ответить

Номер ответа: 6
Автор ответа:
 Иван



Администратор

ICQ: 147688925 

Вопросов: 24
Ответов: 708
 Web-сайт: www.vbnet.ru
 Профиль | | #6
Добавлено: 02.07.02 18:16

Кстати, если это кому-то интересно. то в VB.NET работать с консолью просто и приятно...

Даешь VB.NET в массы

Ответить

Номер ответа: 7
Автор ответа:
 User Unknown



Вечный Юзер!

ICQ: uu@jabber.cz 

Вопросов: 120
Ответов: 3302
 Профиль | | #7 Добавлено: 03.07.02 09:11

Starnnik, вообще то это я предлагал выводить через MsgBox:)

Ответить

Номер ответа: 8
Автор ответа:
 Strannik



Вопросов: 9
Ответов: 112
 Профиль | | #8 Добавлено: 03.07.02 11:02

to гуру:

Вообще-то я Strannik:) А про вывод через MsgBox - это не та идея, за первенство которой нужно спорить:)

Ответить

Номер ответа: 9
Автор ответа:
 Millenium



ICQ: 629966 

Вопросов: 118
Ответов: 903
 Web-сайт: www.aliyev.us
 Профиль | | #9
Добавлено: 28.11.09 11:38
Зачем не юзать Command Line Argument а внутри в Sub Main() проверять COMMAND$ =

Ответить

Страница: 1 |

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



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