Poldi Geschrieben 11. Dezember 2000 Geschrieben 11. Dezember 2000 hallo leutens, kann mir jemand mal ein anwendungsbeispiel für popen() hier reinpasten? ich muß aus einem c proggie heraus ein ls machen und will die dateien, die normalerweise in der konsole angezeigt werden, in einem string speichern ... danke !! poldi
Hasi Geschrieben 11. Dezember 2000 Geschrieben 11. Dezember 2000 Hi Das hier ist aus Visual C++ vielleicht hilft dir ja das weiter dein Hasi /* POPEN.C: This program uses _popen and _pclose to receive a * stream of text from a system process. */ #include <stdio.h> #include <stdlib.h> void main( void ) { char psBuffer[128]; FILE *chkdsk; /* Run DIR so that it writes its output to a pipe. Open this * pipe with read text attribute so that we can read it * like a text file. */ if( (chkdsk = _popen( "dir *.c /on /p", "rt" )) == NULL ) exit( 1 ); /* Read pipe until end of file. End of file indicates that * CHKDSK closed its standard out (probably meaning it * terminated). */ while( !feof( chkdsk ) ) { if( fgets( psBuffer, 128, chkdsk ) != NULL ) printf( psBuffer ); } /* Close pipe and print return value of CHKDSK. */ printf( "\nProcess returned %d\n", _pclose( chkdsk ) ); } Output Volume in drive C is CDRIVE Volume Serial Number is 0E17-1702 Directory of C:\dolphin\crt\code\pcode 05/02/94 01:05a 805 perror.c 05/02/94 01:05a 2,149 pipe.c 05/02/94 01:05a 882 popen.c 05/02/94 01:05a 206 pow.c 05/02/94 01:05a 1,514 printf.c 05/02/94 01:05a 454 putc.c 05/02/94 01:05a 162 puts.c 05/02/94 01:05a 654 putw.c 8 File(s) 6,826 bytes 86,597,632 bytes free Process returned 0
Poldi Geschrieben 11. Dezember 2000 Autor Geschrieben 11. Dezember 2000 Super, danke dir!! Damit kann ich schon mehr anfangen ... ;o) cu Poldi
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden