Definition | #include <stdlib.h> int bs2fstat(const char *muster, void (*fkt)(const char *d_name, int len));
Für jede gefundene Datei ruft Wenn keine Datei dem Auswahlkriterium muster entspricht oder muster fehlerhaft ist, unterbleibt der Aufruf der Funktion fkt, und | |
Parameter | const char *muster: Zeichenkette, die das Auswahlkriterium für einen oder mehrere Dateinamen angibt. muster ist ein voll- oder teilqualifizierter Dateiname mit Wildcard-Syntax. Außerdem können aus Kompatibilitätsgründen weitere Parameter angegeben werden, die die Auswahl der Dateien beeinflussen, z.B:
Diese Parameter müssen in der Syntax des ISP-Kommandos FSTAT angegeben werden. Beispielsweise liefert das Muster " void (*fkt)(const char *d_name, int len) Eine vom Benutzer bereitzustellende Funktion mit den Parametern d_name (Dateiname) und len (Namenslänge). Diese Parameter werden von | |
Returnwert | 0 | bei erfolgreichem Aufruf. |
| DMS-Fehlermeldungscode | |
|
| bei nicht erfolgreichem Aufruf. |
Hinweise | Der DMS-Fehlermeldungscode kann nur außerhalb der benutzereigenen Funktion fkt abgefragt werden, da bei erfolgloser Suche die Funktion nicht aufgerufen wird (siehe auch Beispiel). | |
Beispiel | Folgendes Programm macht alle Dateien, die dem vom Benutzer eingegebenen Namensmuster #include <stdio.h>
#include <string.h>
#include <stdlib.h>
void share(const char *, int);
int main(void)
{
char name[54];
int result;
printf("Welche Dateien shareable machen?\n");
gets(name);
result = bs2fstat(name, share);
if(result != 0)
printf("Fehlercode: DMS%x\n", result);
return 0;
}
void share(const char *nam, int len)
/* die formalen Parameter nam und len werden von */
/* bs2fstat als aktuelle Parameter geliefert */
{
char cmd[200];
strcpy(cmd, "/MODIFY-FILE-ATTRIBUTES ");
strcat(cmd, nam);
strcat(cmd, ",PROTECTION=PAR(USER-ACCESS=ALL-USERS)");
system("/MODIFY-TERMINAL-OPTIONS OVERFLOW-CONTROL=NO-CONTROL");
printf("%s\n", cmd);
system(cmd);
}
| |
Siehe auch | system | |