IPB
ЛогинПароль:

> Правила раздела!

1. Заголовок или название темы должно быть информативным !
2. Все тексты фрагментов программ должны помещаться в теги [code] ... [/code] или [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ" и используйте ПОИСК !
4. НЕ используйте форум для личного общения!
5. Самое главное - это раздел теоретический, т.е. никаких задач и программ (за исключением небольших фрагментов) - для этого есть отдельный раздел!

> Вопрос о запуске из Pascal-программы Net.exe
Касатка
сообщение 23.05.2005 2:48
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 37
Пол: Мужской

Репутация: -  0  +


blink.gif Я замучался с попытками запустить из Pascal-программы модуль Windows NET.EXE. Мне это нужно для написания проги для сканирования расшареных дисков в Интернете. Нужно запустить ДОС-команду "net use <имя диска>: \\<ip-адрес>\C><имя файла>". Я подставляю эту команду в процедуру EXEC: EXEC('net','use '+'<команда>'), EXEC('net use','<команда>'), EXEC(getenv('COMSPEC'),'net use '+'<команда>'), и.т.д. , но программа net с командной строкой (и без) не запускается, не выводит сообщений и не создает файла на моем диске, хотя в самой ДОС команда работает корректно. Кто подскажет и покажет, в чем тут дело (среда-BP7, ОС-WIN 98+Far)?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
Closed Topic Открыть новую тему 
Ответов
SKVOZNJAK
сообщение 23.05.2005 3:54
Сообщение #2


Профи
****

Группа: Пользователи
Сообщений: 930
Пол: Мужской

Репутация: -  11  +


Нужно сохранить вектор прерывания. Поищи по форуму, этот оператор обсуждался. Но есть ещё один способ запуска прог, расширенный, но из основной проги на время придётся выйти. Прога запускается из *.ВАТ файла, в следущие строки батника вписываются нужные операторы, или батник заменяется на другой. Основная прога завершает работу, выполняется следущая строка батника, следущая опять запускает основную прогу, состояние восстанавливаешь по сохранке. Если запускать приходится слишком часто, и батник чересчур вырос, запускаешь из него второй батник который заменяет первый на укороченный и запускает его.
В винде есть дополнительный оператор для батника START имяокна запускаемыйфайл Это позволяет запустить параллельный процесс. Тогда, если основная прога запускалась командой старт, из неё можно не выходить. Нужно лишь написать программу тормоз, которая будет выполняться до тех пор, пока из основной не поступит команда (например через запись в файле или создание файла - выключаемая прога перед прекращением работы его сотрёт smile.gif), тогда начнёт выполняться следущий оператор батника. Вот как при помощи батника запускается игрушка "клизма"
Код

echo off
c:
chdir C:\Program Files\Cheating-Death
start "qqq" /min cdeath.exe
chdir C:\Program Files\Valve
hl.exe -game cstrike
cls

Сложно только закрыть ненужное окно. Можно заменять в батнике только одну строку устроив бесконечный цикл на GOTO

Код

START "assd" prog.exe
:q
tormoz.exe
выполняемый оператор
goto q
:vixod

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

Сообщение отредактировано: SKVOZNJAK - 23.05.2005 4:23
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме
Касатка   Вопрос о запуске из Pascal-программы Net.exe   23.05.2005 2:48
SKVOZNJAK   Нужно сохранить вектор прерывания. Поищи по форуму...   23.05.2005 3:54
Касатка   :blink: Векторы я сохранял (вызывал Swapvectors до...   23.05.2005 4:36
hiv   Защищать нужно программу, через которую вводятся ...   23.05.2005 8:58
volvo   Как завершается процесс? Что DOSError возвращает,...   23.05.2005 16:43
Касатка   :blink: Тогда поподробнее объясните, как паролить ...   23.05.2005 16:54
volvo   Вообще-то значение DOSError = 8 говорит о необходи...   23.05.2005 18:02
Касатка   :blink: Grand Merci Volvo за совет. Теперь команды...   23.05.2005 23:34
hiv   По поводу защиты программ почитай здесь: Защита от...   24.05.2005 9:19
Касатка   :blink: Благодарю hiv за информацию. Но все-таки, ...   24.05.2005 19:59
volvo   Ну, ты бы код-то свой показал, как ИМЕННО ты это п...   24.05.2005 20:16
Касатка   :blink: Да хотя бы сделать так, чтобы заработало в...   24.05.2005 21:53
hiv   Я не знаю как это реализовывать на BP7, а в Delphi...   25.05.2005 7:57
Касатка   :blink: Все-таки нужно на BP7. Дельфи у меня есть,...   25.05.2005 20:42
Romtek   Касатка, а не проще ли создать BAT-файл с таким со...   26.05.2005 1:35
Касатка   :p2: O'Key, попробую. Но почему же в этом журн...   26.05.2005 12:39
Romtek   Для того, чтобы набраться опыта... А так нет особо...   26.05.2005 13:17
Касатка   :D А как же тогда "вытащить" нужную подс...   27.05.2005 18:16
Romtek   Readln (F, str); copy(), pos() на компьютере в л...   29.05.2005 23:47
Касатка   :o Ладно проехали. Romtek, раз уж ты сейчас на фор...   30.05.2005 0:39
Atos   Можно попробовать считать инфу на другом компе... ...   30.05.2005 11:46
Касатка   :huh: Давно хотел спросить: как с помощью стандарт...   30.05.2005 21:50
SKVOZNJAK   Насчёт кряков - осёл тебе поможет :lol: fgngffcyg...   31.05.2005 4:27
volvo   Что-то вы, ребята, от темы отклонились... По-видим...   1.06.2005 16:18


Closed Topic Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 17.07.2025 2:00
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"