Ребята помогите пожалуйста подскажите как из паскаля прочитать файл с расширением *.vbs т.е.
мне надо его запустить прямо из задачи. Заранее благодарен!
Процедура Exec(Путь&Имя_программы), входит в состав модуля Dos.
Q:> А как из моей программы запустить другую?
A: С помощью процедуры Exec:
SwapVectors;
Exec(Путь&ИмяВашейПрограммы, Доп_Параметры);
SwapVectors;
Q:> А почему внешняя программа из моей не запускается?
A: А память кто будет внешней проге отдавать?
По умолчанию все 640Kb отдаются твоей программе.
Исправить это можно либо через Options/Memory Sizes../ High heap limit,
либо директивой компилятора:
{$M 4096,0,10000}
Здесь первая цифра - память под стек (в стеке размещаются локальные
переменные каждой вызываемой процедуры/функции),
вторая - нижняя граница памяти, третья - верхняя.
В данном примере твоей программе отдается 10000 байт,
а все остальное - внешней программе.
Q:> А если мне самому память нужна?
A: Используй библиотеку для своппинга (выгрузки из памяти) в XMS/EMS/Disk -
перед запуском внешней программы твоя программа вместе со всеми данными
переписывается в XMS/EMS или на винт, а после завершения внешней -
восстанавливается.
Можно воспользоваться, например, юнитом SPAWNO от Ральфа Брауна,
или модулем OpExec из ObjectProf by TurboPower.