Шаг 129 - Командная строка

Приложения на VB могут получать аргументы командной строки через функцию Command().

Private Sub Form_Load()
	strcm = Command()
	MsgBox strcm
End Sub

Соберите проект и попробуйте на файл в проводнике положить другой файл.

gif/129_1.gif (3699 b)

Если команд несколько, то командную строку нужно разбирать. Вот так, например.

Function GetCommandLine(Optional MaxArgs)
	'Объявляем переменные.
	Dim C, CmdLine, CmdLnLen, InArg, I, NumArgs
	'Смотрим обеспечен ли числом MaxArgs.
	If IsMissing(MaxArgs) Then MaxArgs = 10
	'Создаем массив установленного размера.
	ReDim ArgArray(MaxArgs)
	NumArgs = 0: InArg = False
	'Получаем командную строку.
	CmdLine = Command()
	CmdLnLen = Len(CmdLine)
	'Идем по командной строке по одному символу
	For I = 1 To CmdLnLen
		C = Mid(CmdLine, I, 1)
		'Проверяем на пробел или Tab
		If (C <> " " And C <> vbTab) Then
		'Не пробел не TAB
		'проверяем наличие параметра.
		If Not InArg Then
		'Новый параметр начинается.
		'Проверим не слишком ли много параметров.
			If NumArgs = MaxArgs Then Exit For
				NumArgs = NumArgs + 1
				InArg = True
			End If
		'Добавляем символ к текущему параметру.
		ArgArray(NumArgs) = ArgArray(NumArgs) & C
		Else
		'Найдет пробел или Tab
		'Установм InArg флаг в False.
		InArg = False
		End If
	Next I
	'Изменим массив на количество элементов 
	'достаточных для параметров.
	ReDim Preserve ArgArray(NumArgs)
	'Вернем массив как результат функции.
	GetCommandLine = ArgArray()
End Function

Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Каев Артем.