Shell

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
DRU
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 56
Зарегистрирован: 16.11.2008 (Вс) 23:26
Откуда: Беларусь, Гомель

Shell

Сообщение DRU » 07.02.2009 (Сб) 13:48

Доброго времени суток! Возникла следующая проблема:
при запуске файла прописываю параметр vbMinimizedNoFocus, для того, чтобы свернуть программу, но программа запускается как обычно. Вот код:
Код: Выделить всё
 
x = Shell(MP, vbMinimizedNoFocus)

Что посоветуете?

Денис
Доктор VB наук
Доктор VB наук
Аватара пользователя
 
Сообщения: 2734
Зарегистрирован: 07.11.2006 (Вт) 13:55
Откуда: Ейск, Краснодарский край

Re: Shell

Сообщение Денис » 07.02.2009 (Сб) 14:24

Программа, которую ты запускаешь?
Она открывает несколько окон. первое сворачивается, а другие нет.
Программирование — богоизбранная дисциплина! Если бог и есть, то вселенную он скомпилировал, не иначе.

DRU
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 56
Зарегистрирован: 16.11.2008 (Вс) 23:26
Откуда: Беларусь, Гомель

Re: Shell

Сообщение DRU » 07.02.2009 (Сб) 14:32

этой командой я запускаю программу, в которой 1 окно - не сворачивается. После этого нужно запустить другую программу нормально. Каждую запускаю через
Код: Выделить всё
x = Shell(MP, vbMinimizedNoFocus)
, только в другом случае без vbMinimizedNoFocus.

DRU
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 56
Зарегистрирован: 16.11.2008 (Вс) 23:26
Откуда: Беларусь, Гомель

Re: Shell

Сообщение DRU » 13.02.2009 (Пт) 20:33

И все же, очень хотелось бы узнать ответ на вопрос. Тем более возникла и другая проблема: открывая через консоль файлы, возникает ошибка - мол не удалось найти такой файл и возникает она тогда, когда в адресе к файлу есть символы пробела.

iGrok
Артефакт VBStreets
Артефакт VBStreets
 
Сообщения: 4272
Зарегистрирован: 10.05.2007 (Чт) 16:11
Откуда: Сетевое сознание

Re: Shell

Сообщение iGrok » 13.02.2009 (Пт) 20:37

DRU писал(а):И все же, очень хотелось бы узнать ответ на вопрос. Тем более возникла и другая проблема: открывая через консоль файлы, возникает ошибка - мол не удалось найти такой файл и возникает она тогда, когда в адресе к файлу есть символы пробела.

Ну тут всё просто. Передаваемое имя файла и путь заключаешь в кавычки.
Т.е. не program.exe c:\my documents\file1, а program.exe "c:\my documents\file1".

А вот что с программой, которая не хочет запускаться свёрнутой.. Хм.
А она вообще в принципе может быть свёрнутой?
label:
cli
jmp label

DRU
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 56
Зарегистрирован: 16.11.2008 (Вс) 23:26
Откуда: Беларусь, Гомель

Re: Shell

Сообщение DRU » 14.02.2009 (Сб) 1:05

Её точно можно сворачивать. А есть другой способ запуска или только через shell?
Возможно я что-то не понял по поводу запуска через консоль. Я запускал файлы вот так:
Код: Выделить всё
Shell "cmd /X /C start C:\1.exe"

Я не прописывал имя файла в начале, а затем путь.

iGrok
Артефакт VBStreets
Артефакт VBStreets
 
Сообщения: 4272
Зарегистрирован: 10.05.2007 (Чт) 16:11
Откуда: Сетевое сознание

Re: Shell

Сообщение iGrok » 14.02.2009 (Сб) 3:42

DRU писал(а):
Код: Выделить всё
Shell "cmd /X /C start C:\1.exe"

Ну так я ж не телепат, чтобы догадаться что именно у тебя и как. Я дал наиболее употребимый вариант..

Если у тебя в пути к 1.exe есть пробелы -
Shell "cmd /X /C start """c:\path with spaces\1.exe"""
Короче, строку с именем файла заключай в "".

Но вообще ты по-моему что-то странное делаешь. Другие пути запуска естественно есть. ShellExecute, например. Понять бы ещё, чего ты хочешь добиться..
label:
cli
jmp label

HiSER
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 88
Зарегистрирован: 04.07.2007 (Ср) 18:17

Re: Shell

Сообщение HiSER » 14.02.2009 (Сб) 9:56

Зачем писать:
Код: Выделить всё
Shell "cmd /X /C start C:\1.exe"

Если можно написать нормально:
Код: Выделить всё
Shell "C:\1.exe"


А то запускается cmd.exe, которое и сворачивается, потом start.exe и на конец 1.exe.

DRU
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 56
Зарегистрирован: 16.11.2008 (Вс) 23:26
Откуда: Беларусь, Гомель

Re: Shell

Сообщение DRU » 14.02.2009 (Сб) 14:31

Дело в том что я собираюсь запускать не только *.exe файлы, мне необходимо запускать .bat и .cmd, а вот shell как раз таки только exe-шники воспринимает.
Тоесть суть в том, что нужно запустить 2 файла, один точно ехе, его нужно свернуть, а другой файл может быть и ехе и bat и cmd.

Williams
Гуру
Гуру
Аватара пользователя
 
Сообщения: 1280
Зарегистрирован: 06.05.2008 (Вт) 18:35
Откуда: System.Reflection.Williams (увидел себя в зеркале :))

Re: Shell

Сообщение Williams » 14.02.2009 (Сб) 14:46

Зацени апишку ShellExecute
И вы думаете, что вас оставят в живых после прочтения этого поста?

DRU
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 56
Зарегистрирован: 16.11.2008 (Вс) 23:26
Откуда: Беларусь, Гомель

Re: Shell

Сообщение DRU » 14.02.2009 (Сб) 16:58

Было бы здорово увидеть примерчик, я так понимаю там есть возможность минимизировать.

iGrok
Артефакт VBStreets
Артефакт VBStreets
 
Сообщения: 4272
Зарегистрирован: 10.05.2007 (Чт) 16:11
Откуда: Сетевое сознание

Re: Shell

Сообщение iGrok » 14.02.2009 (Сб) 18:47

DRU писал(а):Было бы здорово увидеть примерчик, я так понимаю там есть возможность минимизировать.

Ну воспользуйся ты поиском по ShellExecute. Мало того, что на этом форуме есть КУЧА примеров использования, так ещё и гугль выдаёт дофига всего..\

search.php?keywords=ShellExecute&terms=all&author=&sc=1&sf=all&sr=posts&sk=t&sd=d&st=0&ch=300&t=0&submit=%D0%9F%D0%BE%D0%B8%D1%81%D0%BA
label:
cli
jmp label


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: AhrefsBot и гости: 64

    TopList  
cron