Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Auslagerungsdatei ? (https://www.delphipraxis.net/54834-auslagerungsdatei.html)

Vader 12. Okt 2005 11:50


Auslagerungsdatei ?
 
hallo,


wie kann ich die größe der auslagerungsdatei auslesen ?

mfg vader

himitsu 12. Okt 2005 16:12

Re: Auslagerungsdatei ?
 
Am einfachsten wird es wohl sein, wenn du dir die Dateigröße direkt holst.
(hab auch keine Ahnung, wo die Datein in der Registry, oder so, zu finden sind ^^)

Diese liegt ja immer im Hauptverzeichnis der Laufwerke - normaler Weise als "%HOMEDRIVE%\pagefile.sys".
Also bräuchtest du ja nur in allen Laufwerken nach "\pagefile.sys" zu suchen. (aber nicht vergessen, es kann auch mehrere dieser Dateien geben)


Das einzige Problem, was ich jetzt noch sehe, das ja nicht unbedingt alle dieser Dateien vom aktiven Windows verwendet werden (z.B. wenn Windows mehrmals installiert ist)
Aber da aber die verwendeten PageFile's geöffnet und gesperrt sind, könntest du ja versuchen diese Dateien zu öffnen (Lesezugriff sollte ausreichend sein) - bei Fehler wird dann also die Größe zu den anderen Dateien dazuaddiert ^^

Vader 13. Okt 2005 17:55

Re: Auslagerungsdatei ?
 
hallo,

danke für deine hilfe aber ich komme überhaupt nicht weiter !!

mfg vader

himitsu 13. Okt 2005 18:31

Re: Auslagerungsdatei ?
 
Woran hängt es denn?

engine 13. Okt 2005 19:08

Re: Auslagerungsdatei ?
 
Zitat:

Zitat von Vader
wie kann ich die größe der auslagerungsdatei auslesen ?

Hallo Vader,

probier es so...

Delphi-Quellcode:
.
.
.
var
  Memory: TMemoryStatus;

begin
  Memory.dwLength := SizeOf(Memory);
  GlobalMemoryStatus(Memory);
  Label1.Caption := 'Größe der Auslagerungsdatei: ' + IntToStr(Memory.dwTotalPageFile div 1024) + ' kb';
end;
/edit: Syntax korrigiert

himitsu 13. Okt 2005 19:25

Re: Auslagerungsdatei ?
 
Tut mir einen gefallen:
Erschießt mich eichfach mal.




So geht es natürlich auch ...
und ich wußte doch das es da irgendwo was gab :wall:

Vader 14. Okt 2005 10:20

Re: Auslagerungsdatei ?
 
herzlichen Dank !!

mfg Vader

Vader 14. Okt 2005 10:40

Re: Auslagerungsdatei ?
 
hallo,


und wenn ich den code von "engine " in einen timer packe, bekomme ich dann immer die aktuelle größe
der datei angezeigt ?

mfg vader

Vader 14. Okt 2005 10:53

Re: Auslagerungsdatei ?
 
hallo,

problem : aber wenn ich das mit der anzeige im taskmanger bei xp vergleiche, paßt der wert mit
der anzeige im taskmanger nicht zusammen ???
mfg vader

TeronG 14. Okt 2005 11:37

Re: Auslagerungsdatei ?
 
Also bei mir spuckt engine's Function genau den gleichen Wert aus Wie der Taskmanager.
Zugesicherter Speiche (KB) / Grenzwert
Sollte also Auslagerungsdatei + Arbeitsspeicher sein :gruebel:

TKC 14. Okt 2005 12:10

Re: Auslagerungsdatei ?
 
hi,

unter NT Systemen kannst du den Wert aus der Registry holen ....

Unter HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Contro l\Session Manager\Memory Management
findest du einen REG_MULTI_SZ namens "PagingFiles".

Am einfachsten kannst du den mit der JCL auslesen.

z.B.:

RegReadMultiSz(HKEY_LOCAL_MACHINE, 'SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management', 'PagingFiles', slPageFiles);

benötigt JclRegistry.

mfg
ACE

Vader 14. Okt 2005 12:47

Re: Auslagerungsdatei ?
 
hallo,

habe einen großen unterschied, engine's code zeigt 124 MB an der taskmanager zeigt 433 mb ???

mfg vader

Daniel G 14. Okt 2005 12:50

Re: Auslagerungsdatei ?
 
Zitat:

Zitat von Vader
hallo,

habe einen großen unterschied, engine's code zeigt 124 MB an der taskmanager zeigt 433 mb ???

mfg vader

Und du bist sicher, dass du dich nict ...öhm... "verguckt" hast?

Vader 14. Okt 2005 13:21

Re: Auslagerungsdatei ?
 
hallo,

ich glaube mir haben uns falsch verstanden, den wert was engine's code anzeigt
habe ich jetzt gefunden, das ist ein fixer wert und steht auch im tasmanager unter
" speicher/ grenzwert "

aber ich meine den wert was in der grafik oberhalb angezeigt wird der sich auch ständig
verändert, so wie die cpuauslastung, und diese grafik ist auch mit auslagerungsdatei
bezeichnet, und die würde ich dringend brauchen, denn ich möchte wissen wenn ich eine speicherintensive anwendung habe ob sich dieser variable wert verändert oder ob die cpuauslastung steigt !!!!!!!!!!!


mfg vader

TeronG 14. Okt 2005 15:48

Re: Auslagerungsdatei ?
 
Zitat:

Zitat von Vader
den wert was engine's code anzeigt
habe ich jetzt gefunden, das ist ein fixer wert und steht auch im tasmanager unter
" speicher/ grenzwert "

Zitat:

Zitat von TeronG
... der Taskmanager.
Zugesicherter Speiche (KB) / Grenzwert
...

liest denn KEINER meine Post's :cry:



btw: zum Thema:
Delphi-Quellcode:
var
  Memory: TMemoryStatus;
begin
  Memory.dwLength := SizeOf(Memory);
  GlobalMemoryStatus(Memory);
  Label1.Caption := ('Größe der Auslagerungsdatei: ' + IntToStr(Memory.dwTotalPageFile div 1024) + ' kb');
end;
Spiel dich doch mal mit diesen .dwTotalPageFile ... evtl. is da ja was dabei

Vader 14. Okt 2005 18:14

Re: Auslagerungsdatei ?
 
hallo terong,

haben wir schlampig gelesen, aber das hilft mir auch nicht weiter, siehe was ich zuletzt gepostet habe,
ich bräuchte den variablen wert ????

mfg vader

engine 14. Okt 2005 18:24

Re: Auslagerungsdatei ?
 
Zitat:

Zitat von Vader
ich glaube mir haben uns falsch verstanden

Ja, das kann man wohl sagen.

Den von Dir gewünschten Wert bekommst Du mit:
Delphi-Quellcode:
Label1.Caption := 'Belegter Platz der Auslagerungsdatei: ' + IntToStr((Memory.dwTotalPageFile - Memory.dwAvailPageFile) div 1024) + ' kb';
mfG engine

Vader 14. Okt 2005 19:20

Re: Auslagerungsdatei ?
 
hallo engine,

ich bin begeistert, genau das wollte ich, jetzt haben wir uns verstanden, toll das man in diesem
forum immer wieder hilfe bekommt !!

mfg vader

TeronG 18. Okt 2005 11:11

Re: Auslagerungsdatei ?
 
Zitat:

Zitat von Vader
haben wir schlampig gelesen, aber das hilft mir auch nicht weiter, ...

Zitat:

Zitat von Ich
Spiel dich doch mal mit diesen .dwTotalPageFile

Zitat:

Zitat von engine
Memory.dwTotalPageFile - Memory.dwAvailPageFile

Haben wir uns den Text nicht angesehen?? Oder warum lag die Lösung doch in den gegeben Code?? ...
Scheinbar liest Tatsächlich keiner meine Post's :(


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:56 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