Programmeren in REXX/RexxUtil: verschil tussen versies

Verwijderde inhoud Toegevoegde inhoud
GuyDC (overleg | bijdragen)
Verbeteringen tekst - navigatiesjabloon
GuyDC (overleg | bijdragen)
kGeen bewerkingssamenvatting
Regel 161:
De eerste zin is het antwoord van Windows op het eerste 'ERASE' commando. Hier kunnen we nog met dat bericht leven. Maar voor een nietsvermoedende gebruiker is zo'n bericht, midden in de uitvoering van een programma niet duidelijk en ook niet leuk om zien. Erger nog, zelfs al mislukte dit commando omdat het bestand er niet is, toch geeft Windows een returncode 0 terug. Ons programma kan het foutbericht niet intercepteren en heeft er dus het raden naar of de operatie lukte of niet.
 
Bij de daaropvolgende '''SysFileDelete''' functie krijgen we een rare boodschap. Dit is het gevolg van een typische beginnersfout. REXXWe laatkijken nu terug naar de functieinstructielijn uitvoerenmet de SysFileDelete. DezeREXX geeftvervangt eende terugfunctie door het resultaat dat gelijkze isproduceerde, aant.t.z. 2 (want het bestand is niet gevonden). EnHet datstatement is nochnu eenerg gekendkort REXXgeworden bevel,en maakt geen deel uit nochvan een interneassignatie of externeeen functie,conditionele nochinstructie een(bv. anderwhen REXX2=0 programmathen) of eenzo. REXX geeft dat resultaat dus door als host- commando. Tot nader order heeft Windows geen commando dat "2" noemt, tenzij er een 2.BAT of 2.REX in het "path" te vinden is.
 
De tweede 'ERASE' geeft ons helemaal geen tekst te zien (alles verliep OK, maar we zien dat niet) en ook hier is de returncode=0.
Regel 180:
RC 3 =0
RC 4 =0
En we zien dat de SysFileDelete functie ons wel degelijk meer zinvolle "returncodes" geeft. Het afschrikkend foutbericht krijgen we ook niet meer, maar ons programma kan aan de hand van de returncode de gebruiker op een vriendelijke manier inlichten als dat nodig zou blijken.
 
We herhalen hier nogmaals de uiterst belangrijke regel die we in [[Programmeren in REXX/Host_Commando's#Van levensbelang]] hebben aangehaald ! '''Codeer alles wat niet variabel is als constante, dus tussen aanhalingstekens.'''
==SysFileCopy - een bestand kopiëren==
'''SysFileCopy'''(bronbestand,doelpad)
Regel 210 ⟶ 208:
De lijst van de gevonden bestanden wordt in de opgegeven ''stem.'' geplaatst, waarbij de dimensie van de stem, dus het aantal gevonden bestanden, in element 0 wordt gezet.
 
EenAls ''opties'' kan men een combinatie van één of meer van volgende opties kan wordenletters meegegevenopgeven:
*'''F''' enkel voor bestanden zoeken ('''F'''iles);
*'''D''' enkel naar (sub)mappen zoeken ('''D'''irectories);
Informatie afkomstig van https://nl.wikibooks.org Wikibooks NL.
Wikibooks NL is onderdeel van de wikimediafoundation.