![]() |
DiskFree/DiskSpace DOS HDD>2GB
Hallo,
ich habe mir ein kleines Programm geschrieben (Borland Turbo Pascal 7), welches von einer Windows98 Bootdiskette gestartet wird und mir angaben über ein Laufwerk macht. Im Detail Größe und Freier Speicherplatz. Jetzt gibt es 2 Funktionen die mir diese Informationen liefern, "DiskFree" und "Diskspace" jedoch ist mir klar das diese nur funktionieren bei Partitionen kleiner 2GB. Jetzt meine Frage wie man dennoch an die Informationen rann kommt, ich habe im Internet einige Dinge gefunden in richtung Assembler jedoch kann ich dieses nicht, und fertige Beispiele konnte ich nicht finden. Hat jemand von euch da evtl. etwas auf Lager was man verwenden kann? Also im Großen und ganzen möchte ich ein Programm haben was von einer Windows98 Bootdiskette aka MS DOS ausgeführt werden kann. mfg TUX_der_Pinguin |
Re: DiskFree/DiskSpace DOS HDD>2GB
Hallo,
nur über die neuen Windows-Funktionen. Die könnte man auch per DLL-Imports (Stichwort: thunking) unter Dos benutzen, aber über DOS denke ich nicht mehr nach ... ;) Heiko |
Re: DiskFree/DiskSpace DOS HDD>2GB
Hallo,
die erweiterte API Funktion GetDiskFreeSpaceEx() kommt mit mehr als 2GB zurecht und wird laut PSDK auch von Win98 unterstützt. Grüße vom marabu |
Re: DiskFree/DiskSpace DOS HDD>2GB
@hoika: Naja das wäre dann doch etwas zu aufwendig und kompliziert ...
@marabu: Das ist mir auch klar, jedoch geht es um eine Windows98 "BOOTDISK" was also DOS ist und da laufen nun mal keine 32Bit Programme .... |
Re: DiskFree/DiskSpace DOS HDD>2GB
Theoretisch könnte man über GetDiskFreeSpace immernoch an das richtige Ergebnis rankommen
SectorSize * Anzahl der freien Sektoren, aber leider geht das nicht, da MS in dieswer Funktion nicht die tatsächlich freien Sektoren ausgibt, sondern diese intern nur aus dem freiem Speicher und der Sektorgröße ausrechnet. Jedoch gibt es ja noch andere Funktionen, über welche man an die Anzahl der (freien) Sektoren rankommt (auch schon unter Win9x) ... damit kannst du dann ja selber zusammenrechnen ;) Und falls du dennoch nicht fündig wirst: Win9x/DOs kennt ja "nur" FAT, da kannst'e ja notfalls och die 1. FAT auslesen und selber nachzählnen :roll: |
Re: DiskFree/DiskSpace DOS HDD>2GB
Hallo,
das Win98-DOS sollte Int21H function 440DH minor function 60H verstehen: ![]() Und zusammen mit der BP7 Dokumentation ist das dann auch ohne tiefere Assembler Kenntnisse machbar. Freundliche Grüße |
Re: DiskFree/DiskSpace DOS HDD>2GB
Hi,
also eine ähnnliche Seite habe ich auch gefunden das aber nicht geschafft das umzusetzen ... ich hab keinen Plan von Assembler und wie man den in Turbo Pascal einsetzt. mfg TUX |
Re: DiskFree/DiskSpace DOS HDD>2GB
Ich habe leider gerade kein Handbuch von BP7 zur Hand, aber findest du für die Funktion MSDOS() keinen Eintrag in der Hilfe?
|
Re: DiskFree/DiskSpace DOS HDD>2GB
Ich schau mir das nachher mal an ob ich da was zurecht gebastelt bekomme.
|
Re: DiskFree/DiskSpace DOS HDD>2GB
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:43 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz