запуск другой программы

Вопросы программирования на Free Pascal, использования компилятора и утилит.

Модератор: Модераторы

запуск другой программы

Сообщение Attid » 23.07.2007 01:51:39

мучаю FpExecV

процедурка чесно перерисованая из ExecuteProcess

Код: Выделить всё
procedure ExecuteString(const vStr: string);
var cmd:string;
    param: AnsiString;
    param2 : ppchar;
var sp:Integer;
begin
  sp:= Pos(' ',vStr);
  if sp > 0  then
  begin
    cmd := Copy(vStr,1,sp-1);
    param := Copy(vStr,sp+1,Length(vStr));
    WriteLn('cmd "',cmd,'"');
    WriteLn('param "',param,'"');
    param2:=nil;
    UniqueString(param);
    param2:=StringtoPPChar(param,1);
    param2^:=pchar(cmd);
    FpExecV(pchar(cmd),param2);
  end;
end;


запускаю
Код: Выделить всё
ExecuteString('/bin/ls -li /');


все запускается, отрабатывает нормально но после консоль начинает глючить =( что не так ?
Аватара пользователя
Attid
долгожитель
 
Сообщения: 2586
Зарегистрирован: 27.10.2006 17:29:15
Откуда: 44°32′23.63″N 41°2′25.2″E

Сообщение Attid » 23.07.2007 20:25:37

я не пойму толи я не те вопросы задаю толи грабли только вокруг меня разложены.
что-то мои вопросы все игнарируют =(
уйду я от вас, злые вы (с)

в общем я понял проблему,
так работает
Код: Выделить всё
uses Unix;
FpExecL('/bin/ls',['-li']);

так не работает
Код: Выделить всё
uses Crt,Unix;
FpExecL('/bin/ls',['-li']);

трабла в инициализации Crt
пойду в трекер, у кого есть возможность подтвердите и проверьте на последней версии фпц.
Аватара пользователя
Attid
долгожитель
 
Сообщения: 2586
Зарегистрирован: 27.10.2006 17:29:15
Откуда: 44°32′23.63″N 41°2′25.2″E

Сообщение Sergei I. Gorelkin » 24.07.2007 00:45:24

Ну как можно было из первого вопроса догадаться, что подключен модуль CRT? :)
Это известное сборище глюков... Я бы посоветовал посмотреть исходники text-mode IDE - там они запускают программы и при этом как-то остаются в crt-режиме.
Аватара пользователя
Sergei I. Gorelkin
энтузиаст
 
Сообщения: 1406
Зарегистрирован: 24.07.2005 14:40:41
Откуда: Зеленоград

Сообщение Attid » 24.07.2007 01:09:55

на первый можно было сказать сам дурак все работает.
я б начал вырезать у себя все лишнее.
пойду другую тему свою апну.
Аватара пользователя
Attid
долгожитель
 
Сообщения: 2586
Зарегистрирован: 27.10.2006 17:29:15
Откуда: 44°32′23.63″N 41°2′25.2″E


Вернуться в Free Pascal Compiler

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

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2

Рейтинг@Mail.ru