Wątek przeniesiony 2015-01-08 17:52 z Delphi i Pascal przez olesio.

Jak do programu napisanego w Pascalu, wplatać standardowe komendy CMD?

0

Witam,

Jestem dopiero początkującym "użytkownikiem" Pascala, i chciałbym napisać program który potrafi wywołać komendę CMD oraz program typu adb, baksmali itd.
Być może kilka osób spotkało się z tymi programami, dla osób które się jednak z tym nie spotkały powiem że są to aplikacje z których korzystamy bezpośrednio przez CMD - cd "ścieżka do pliku" a następnie wywołanie od razu komend tych programów.

Chciałbym również móc otwierać pliki z rozszerzeniem *.bat.

Czytałem o tym tutaj: http://wiki.freepascal.org/Executing_External_Programs aczkolwiek muszę się przyznać że nie za wiele rzeczy z tego rozumiem. :(

Chciałbym więc prosić o pomoc osoby biegłe w temacie. :)

Pozdrawiam!
Bartek

1

Opcja 1: ShellExecute
Opcja 2: WinExec
Opcja 3: czytasz tamten artykuł dopóki nie zrozumiesz; masz nawet przecież przykładowe fragmenty kodu.

0

Trzymaj, najprościej jak umiałem.

 
program program1;
uses SysUtils, ShellApi;

{$APPTYPE CONSOLE}

var s:string;
begin
readln(s);

ShellExecute(0,nil, PChar('cmd.exe'),PChar('/c '+s),nil,0);
readln;
end.
0

Polecam przed rozpoczęciem programowania poczytać kursy, bo imo nie znasz podstaw. Należy też googlować i kombinować samodzielnie do bólu zanim napiszemy na forum cokolwiek. Tak, wiem powatarzam się, ale będę męczył te stwierdzenie do bólu również, bo ludzie nie chcą się stosować.

Co do problemu. Poczytaj sobie na przykład na MSDNie, jakie wartości powinna przyjmować funkcja ShellExecute w ostatnim parametrze. Poza tym jest też różnica między parametrami /c, a np /k. Wątek ten przenoszę do Newbie, bo dotyczy właśnie podstaw.

1 użytkowników online, w tym zalogowanych: 0, gości: 1