![]() |
| | #1 (permalink) | ||
| Registered User Join Date: Feb 2001 Location: Bucuresti |
Mai intai o intrebare: daca pun pe un cd un AUTOEXEC.bat si atat, booteaza de pe el?, adik daca pun un uindãuz intr-un folder pe cd si un autoexec in care sa scriu \winme\setup.exe (de exemplu) o sa booteze? Sperand ca da, intrebarea principala e alta: Voiam sa fac o treaba si ma gandeam ca in pascal ar fi posibil (ca tot cica fac pascalu la skoala): Sa booteze de pe cd un .exe(facut in pascal) in care sa aleg intre 2 fisere .exe (setupu-rile de la windosuri). DAR o mica problema: habarn-am cum sa fac sa deschida un executabil din pascal? Stie careva cum as putea sa fac? Daca nu merge faza cu bootarea macar alta varianta? 10x -(c-ati citit macar...)
__________________ Indubitabil ! sau .... | ||
|
| | #2 (permalink) | ||
|
Cd-ul nu va deveni butabil daca copiezi doar autoexec.bat pe el. Trebuie sa il faci bootabil cu un program (ex. nero). Faci o discheta sistem pe care pui autoexec.bat cam cum ai vrea sa fie si asta o bagi cand ii dai sa faca cd-bootabil cu Nero si el iti citeste discheta si iti face cd-u bootabil Legat de pascal se foloseste functia Exec : such as: var ProgramName, CmdLine: string; begin Write('Program to Exec (full path): '); ReadLn(ProgramName); Write('Command line to pass to ', ProgramName, ': '); ReadLn(CmdLine); WriteLn('About to Exec...'); SwapVectors; Exec(ProgramName, CmdLine); SwapVectors; WriteLn('...back from Exec'); if DosError <> 0 then{ Error? } WriteLn('Dos error #', DosError) else WriteLn('Exec successful. ', 'Child process exit code = ', DosExitCode); end. Observi comanda SwapVectors; sa nu o uiti inainte si dupa apelarea lui Exec; | |||
|
| | #3 (permalink) | ||
| Registered User Join Date: Feb 2001 Location: Bucuresti |
10x, DAR: Eram io fericit, si cand dau run - bang imi zice ca UNKNOWN IDENTIFIER la SwapVectors Exec Dos Error DosError DosExitCode Am pascal 7.0, dc nu merge??? Ce tre-sa-i mai fak?
__________________ Indubitabil ! sau .... | ||
|
| | #7 (permalink) | ||
| Registered User Join Date: Feb 2001 Location: Bucuresti |
Lasa ma ca din helpu ala nu inteleg nimic, io-s la inceput rau de tot cu pascalu... asa ca mai zi-mi pls treaba aia ca mi-ai dat "programu" da io nu ma inteleg cu el...: 'Command line to pass to ' - Ce scriu aici (banuiesc ca aici scriu ceva ca sa deschida programu (ca asta sper ca face..) dar ce scriu cand imi cere asta?)
__________________ Indubitabil ! sau .... | ||
|
| | #8 (permalink) | ||
| Registered User Join Date: Feb 2001 Location: Bucuresti |
Haideti ma oameni buni... nu mai stie nimeni ce tre-sa scriu la comand line ala? (acum incep sa ma intreb(ca-s ametitt rau in atatia termeni necunoscuti), programul asta ce face oare, sper ca asta ce voiam, adik sa deschida fisiere .exe .....)
__________________ Indubitabil ! sau .... | ||
|
| | #10 (permalink) | ||
| Registered User Join Date: Feb 2001 Location: Bucuresti |
sa-mi booteze de pe cd si sa-mi apara o treaba (gen faza cand ai 2 windowsuri instalate) unde sa aleg dintre cele 2 windowsuri care sa il instalez. Si daca aleg de exemplu una dintre ele trebuie sa mi se deschida setup.exe al windowsului ME de pe CD meu. Daca aleg win 98, sa mi se deschida setup.exe de la win98. Dar pentru asta imi trebuie un mic mic mic programel unde sa am posibilitatea sa fac alegerea intre cele doua, si el SA-MI DESCHIDA SETUP.EXE . Dar aici intervine problema mea, ca io nu stiu cum sa fac un program care sa deschida un fisier .exe (in Pascal vorbind) Hawkie mi-a dat varianta aia, merge dar nu inteleg exact ce-i cu faza aia cu comand line, imi cere sa introduc ceva, si nu stiu ce sa-i dau (daca ii dau ceva imi da DosError #8 sau #2)
__________________ Indubitabil ! sau .... | ||
|
| | #11 (permalink) | ||
|
N-o lua cuvant cu cuvant pentru ca n-am mai lucrat de mult in PAS. uses dos,crt; var ch:char; begin writeln('Alege (1=executie_program_1; 2=executie_prog_2) ch:=readkey; if readkey=#0 then ch:=readkey; if ch='1' then exec('program_1.exe','parametri_daca_e_cazul') if ch='2' then exec('program_2.exe','parametri_daca_e_cazul') end. E o diferenta intre a deschide un fisier si a executa un fisier. Deschiderea se face pt scriere/citire si nu cred ca e cazul aici. | |||
|
| | #12 (permalink) | ||
| Registered User Join Date: Feb 2001 Location: Bucuresti |
ciudat.... nu da eroare, adik merge programul, dar nu deschide nimic. Am rulat dar degeaba. S-ar putea totusi sa fie niste probleme pe care nu le stiu io: uses dos,crt; var ch:char; begin writeln('Alege (1=executie_program_1; 2=executie_prog_2) ; ch:=readkey; if readkey=#0 then ch:=readkey; if ch='1' then exec('program_1.exe','parametri_daca_e_cazul') if ch='2' then exec('program_2.exe','parametri_daca_e_cazul') end. Ce fac cu alea? daca sterg alea cu parametrii adik las doar then exec('program_1.exe') da eroare si cere o virgula, pun virgula si dup-aia zice ca-i total aiurea ce-am facut. Deci ce pun la parametrii?
__________________ Indubitabil ! sau .... | ||
|
| | #17 (permalink) | ||
| Registered User Join Date: Feb 2001 Location: Bucuresti |
YYYYYYYYEEEEEEEEEEEEESSSSSSSSSS!!!!!!!!!!!! Banuiesc ca banuiti ce inseamna asta... A MERS Bine Rabbit !!!!! L-am mai simplificat in: uses dos,crt; var ch:char; begin {$M $4000,0,0} writeln('Alege (1=executie_program_1; 2=executie_prog_2'); Readln(ch); if ch='1' then exec('test.exe','') else if ch='2' then exec('adifund.exe','') ; end. Faza aia cu {$M $4000,0,0} ce vrea sa insemne? Treaba cu alocarea memoriei? sau ce draq (citeam pe la help si avertizau nu stiu ce cu memoria pe care o foloseste..) Da oricum conteaza ca A MERS!!! 10x
__________________ Indubitabil ! sau .... | ||
|
| | #18 (permalink) | ||
| Registered User Join Date: Feb 2001 Location: Bucuresti |
test.exe si adifund(al).exe erau fisierele proba... Dar cand eram asa fericit, iar m-am îndilemat: Cum fac ca atunci cand bag discheta de boot sa-mi deschida automat programelu'? Defapt ma intereseaza pentru cd, dar mai intai cica tre-sa fak discheta sa mearga?
__________________ Indubitabil ! sau .... | ||
|
| | #19 (permalink) | ||
| Registered User Join Date: Aug 2000 Location: Ploiesti |
Chiar esti incepator omule... dar hai sa te ajut Sa o luam cu inceputul: -faci CD boot cu Nero sau orice alt program care suporta asa ceva. -faci un fisier in root la cd: autorun.inf, in care scrii [autorun] open=selectOS.exe -copiezi OS-urile pe CD de preferabil in X:\WinME si X:\Win98, si ce mai ai de copiat... -acum in pascal faci asa: uses dos,crt; var ch:char; begin writeln('Alege OS-ul: 1=WinME sau 2=Win98'); ch:=readkey; if readkey=#0 then ch:=readkey; if ch='1' then exec('X:\WinME\setup.exe',''); if ch='2' then exec('X:\Win98\setup.exe',''); end. compilezi programul si il bagi pe root la cd cu numele de selectOS.exe. P.S. inlocuieste X:\ cu litera CDWriter-ului Sper sa nu te simti ofensat de explicatii, si deasemenea sper sa iti mearga. | ||
|
| | #20 (permalink) | ||
|
readln(ch) e o solutie tzaraneasca (poti introduce si un text, ceea ce n-are sens) dar ma rog... cum vrei Da, faza cu $M e pentru alocarea memoriei $M: Memory Allocation Sizes Directive Specifies a program's memory allocation parameters. Syntax: $M stack size, heapmin, heapmax | |||
|
| Advertisment | |
![]() |
|
| Thread Tools | |
| |