del und verzeichnisse



  • dateien löschen kanns du mit std::remove auf <cstdio>, ordner anlegen kanns du mit Standard C++ nicht (under dos kanns du das mit md machen) aber ich würde mir überlegen ob winapi nicht besser wäre



  • danke erstmal für remove.
    aber winapi ist nicht geeignet da es ein 'os' wird(naja, ein ganz kleines das einen rechner, zeit, und eben dateien hat.)
    was ist md?
    und noch was, wie kann ich sowas wie dir machen?
    gibts da nicht in dos.h was?
    bye



  • md ist ein dos befehl um verzeichnise zu machen, ja klar solltes du dir mal die dos.h ankucken
    Ich verschiebe den Thread mal in Rund um die Programmierung Forum.



  • Wenn du ein OS selber schreiben willst, dann kannst du keine DOS Funktionen benutzen. Dann musst du alles selber schreiben.



  • naja, nicht ein wirkliches os. ein os das auf dos startet. nur so eine art von os.

    aber wer gibt mir nun die fkts? del(remove, gibts da nicht noch was in dos.h?), dir, und verzeichnisse.
    thx.
    bye



  • Also eher eine Shell? Naja ich verschieb dich mal in das DOS Forum



  • schau mal nach, ob du sowas hast in deinem compiler (beim djgpp wärs dabei...)

    mkdir
    Syntax
    #include <sys/stat.h>

    int mkdir(const char *path, mode_t mode);

    Description
    This function creates a subdirectory.

    All the bits except S_IWUSR in the mode argument are ignored under MS-DOS. If S_IWUSR is not set in mode, the directory is created with read-only attribute bit set. Note that DOS itself ignores the read-only bit of directories, but some programs do not.

    Return Value
    Zero if the subdirectory was created, nonzero on failure.

    Portability
    not ANSI, POSIX

    Example
    mkdir("/usr/tmp", S_IWUSR);



  • thx,
    nunja mein compiler ist halt eben der msvc++ und sagen wir mal, nicht so teuer erworben;-) . das problem: die hilfe fehlt, hab aber was zu mkdir gefunden in dircet.h.
    thx.

    und was zum diren?



  • lol, also wenn du mit MSVC++ arbeitest, dann arbeitest du auch unter Windows. Und unter Windows kannst du auch die API Funktionen nutzen, egal ob Konsole oder Fenster.

    CreateDirectory
    RemoveDirectory
    DeleteFile

    Du brauchst nur die windows.h einbinden.



  • also nochmal:

    ich hab einen alten ps1 ibm pc! darauf läuft dos.
    nun will ich ein 'os' drauf machen(das auf dos laufen soll) damit ich einfach ein bisschen fun hab zum progen und zum schauen obs geht.
    also kann ich da kein winAPI machen, da kein win laüft, aber ich hab auf meinen pentium eben win, und auf win läuft der msvc++.

    gibts die funktionen alle nicht auch in dos.h?

    thx bye



  • hol dir den djgpp...

    mit dem studio kommst du nicht weit..
    *
    #include <unistd.h>

    int chdir(const char *new_directory);

    Description
    This function changes the current directory to new_directory. If a drive letter is specified, the current directory for that drive is changed and the current disk is set to that drive, else the current directory for the current drive is changed.

    -----------------------

    #include <dirent.h>

    int closedir(DIR *dir);

    Description
    This function closes a directory opened by opendir (see section opendir).
    -----------------------
    #include <unistd.h>

    char * dirname (const char *fname);

    Description
    This function returns the directory part of the argument fname copied to a buffer allocated by calling malloc. The directory part is everything up to but not including the rightmost slash (either forward- or backslash) in fname. If fname includes a drive letter but no slashes, the function will return x:. where x is the drive letter. If fname includes neither the drive letter nor any slashes, "." will be returned. Trailing slashes are removed from the result, unless it is a root directory, with or without a drive letter.

    --------------------------
    Syntax
    #include <dir.h>

    int findfirst(const char *pathname, struct ffblk *ffblk, int attrib);

    Description
    This function and the related findnext (see section findnext) are used to scan directories for the list of files therein. The pathname is a wildcard that specifies the directory and files to search for (such as subdir/*.c), ffblk is a structure to hold the results and state of the search, and attrib is a combination of the following:

    FA_RDONLY
    Include read-only files in the search (Ignored.)
    FA_HIDDEN
    Include hidden files in the search
    FA_SYSTEM
    Include system files in the search
    FA_LABEL
    Include the volume label in the search
    FA_DIREC
    Include subdirectories in the search
    FA_ARCH
    Include modified files in the search (Ignored.)
    -------------------*

    etc ......



  • Also Visual C++ kannst du jedenfalls nicht für dein Vorhaben verwenden, falls du das vorhattest. :p



  • @ trolli: leck mich am A-R-S-C-H!

    @all die anderen, was ist ein djgpp?

    und gibts das nicht alles in einem header?(dos.h könnte ich mir irgendwie vorstellen , aber weiss ned)???

    merci.
    bye

    [ Dieser Beitrag wurde am 01.12.2002 um 19:30 Uhr von donay editiert. ]



  • Trolli hat nunmal recht, und wenn du hier so kommst, hab ich auch keine lust mehr..



  • Trolli hat in der Tat Recht! Der MSVC ist ein reiner 32bit-Compiler (siehe FAQ: Unterschied DOS / Win32-Konsole), dort findest du auch einige Compiler die DOS unterstützen, sowie der djgpp in der 16bit-Version!

    Diesen kannst du dir von der entsprechenden Website (Google) gratis runterladen, ist Freeware.

    Mit ihm kannst du dann DOS-Proggies erstellen!

    MfG SideWinder



  • hi.
    sorry, erstmals, wusste ich nicht. ABER in einem hab ich recht: ich will kein visual c++ sonder nur c++ und trolli hat gesagt ein vc++ *ob die mir die ausrede abkaufen?* lol.
    was ist der unterschied zwischen 16 und 32 bit? 16=dos, 32=win. aber was sind den bits genau(kleinste einheit, 8bits=ein byte(soviel ich weiss)). aber in diesem zusammenhang...
    @trolli sorry.
    bye
    donay



  • Donay:
    Man kann seine Beiträge auch editieren. 🙂

    es ist ganz einfach:
    32bit = Windows.
    16Bit = DOS.

    Windows kann 16Bit DOS-Programme ausführen. DOS kann aber keine 32bit-Programme ausführen.



  • aber ich haätte gerne noch die drei funktionen, alle in einem header wenns geht.
    :
    dir, del, verzeichniss erstellen...
    merci
    bye
    donay


Anmelden zum Antworten