AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte Systeminformation 1.0 - Lite
Thema durchsuchen
Ansicht
Themen-Optionen

Systeminformation 1.0 - Lite

Ein Thema von Akut-Programming · begonnen am 25. Okt 2003 · letzter Beitrag vom 7. Jan 2004
Antwort Antwort
Seite 2 von 8     12 34     Letzte »    
Akut-Programming
Registriert seit: 18. Aug 2003
Hi Leute!

Ich stell euch heut wieder mal einer meiner Anwendungen vor. Sie ist gestern fertig gewurden.

Anwendung: Small Soft Systeminformation 1.0 - Lite
Release: sys_smsi20032410

Beschreibung:

Mit der Systeminformation 1.0 können die eingebaute Hardware, sowie installierte Software und noch viel mehr ausgelesen werden. Prozessorauslastung wird mit Statusleiste dynamisch angezeigt.

Genauere Infos:
www.small-soft.com

Direktlink:
Small Soft Systeminformation 1.0 - Lite Setup
Akut-Programming
be cool, be hot ... just be
 
Tim.exe
 
#11
  Alt 26. Okt 2003, 12:21
Hallo,

ist ja ein nettes hübsches Tool

Mir ist aufgefallen das die CPU Last 100% anzeigt, gem. einem anderem Tool ist sie aber nur ~2,5%.

Die DirectX Umgebung sagt mir ich hätte die Version 4.x, aber eigentlich habe ich 8.x...

Kannst du mir veraten wie du den BIOS Namen, Version und Datum herausfindest? Sowas könnte ich nämluch auch brauchen...
  Mit Zitat antworten Zitat
Alexander

 
Turbo Delphi für .NET
 
#12
  Alt 26. Okt 2003, 13:03
Zitat:
Ja die Geschichte mit den Festplatten ist mir auch schon aufgefallen, bekomme nur die Werte nich in Kommazahlen. Dann würde es genauere Werte ergeben. Und nochwas, es ist meist wirklich so, das man statt ner 60GB Platte nur 57GB angezeigt bekommt. Das hat was damit zutun, das die Hersteller immer Unterschiede zwischen 1024 MB = 1GB und 1000MB= 1GB sehen. Hab z.B. auch ne 60GB drin, und bei der bekomm ich egal wo immer angezeigt, das ich nur 57GB frei hab, auch wenn ichse grad erst platt gemacht hab.
Ist ja schön und gut, aber er zeigt ganz und gar nicht die richtigen Werte an .
Bei mir zeigt für's Laufwerk C 8,5 TB, nicht GB
Alexander
  Mit Zitat antworten Zitat
Akut-Programming
 
#13
  Alt 26. Okt 2003, 13:54
@ Tim:

Also wenn die Prozessorauslastung bei Start der Anwendung schon bei 100% anschlägt brauchste dir keene Platte machen, das es so ist. Merkwürdigerweise bleibt die Satusleiste immer mal hängen. Bin schon am basteln, wie ich das beheben kann. Versuchs vielleicht nochmal mit n Neustart der Anwendung!?

Dat mit der DirectX Version liegt daran, das ich die Angabe so im Registry eintrag von DirectX steht. Wenn du dir den Wert genau anschaust, kommt nach der 4.0 deine 8 - Dies ist die installierte DirectXversion.

Bei mir steht z.B.: 4.09.00.0902 - habe DirectX 9 installiert!!!

@ Alex:

Wie gesagt, habe ne falsche bezeichnung gewählt - KB - statt eigentlich Byte!!!
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

 
Delphi 2006 Professional
 
#14
  Alt 26. Okt 2003, 15:08
Wo ist das Problem die Angabe zu formatieren? Format, heißt das Zauberwort in der Hilfe.
Michael
  Mit Zitat antworten Zitat
axelf98

 
Delphi 2005 Personal
 
#15
  Alt 26. Okt 2003, 15:57
Müsste eigentlich so stimmen:
Delphi-Quellcode:
function Formatieren(KB: Extended): String;
const Genauigkeit = 1000;
var
 Dimension : String;
begin
 if KB >= 0 then Dimension := 'KiloByte';
 if KB > 1023 then Dimension := 'MegaByte';
 if KB > 1048575 then Dimension := 'GigaByte';
 if KB > 1073741823 then Dimension := 'TeraByte';
 if KB > 1099511627775 then Dimension := 'PetaByte';
 if KB > 1125899906842619 then Dimension := 'ExaByte';

if Dimension = 'KiloBytethen result := Floattostr(KB)+ ' ' + Dimension;
if Dimension = 'MegaBytethen result := Floattostr(round((KB / 1024) * Genauigkeit)/Genauigkeit) +' ' + Dimension;
if Dimension = 'GigaBytethen result := Floattostr(round((KB / 1048576) * Genauigkeit)/Genauigkeit) +' ' + Dimension;
if Dimension = 'TeraBytethen result := Floattostr(round((KB / 1073741824) * Genauigkeit)/Genauigkeit) +' ' + Dimension;
if Dimension = 'PetaBytethen result := Floattostr(round((KB / 1099511627776) * Genauigkeit)/Genauigkeit) +' ' + Dimension;
if Dimension = 'ExaBytethen result := Floattostr(round((KB / 1125899906842620) * Genauigkeit)/Genauigkeit) +' ' + Dimension;
end;
  Mit Zitat antworten Zitat
Akut-Programming
 
#16
  Alt 26. Okt 2003, 18:43
Cool, danke Axel, werd ich mal einbauen und testen. So wies ausschaut isses genau dat was ich suche!
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

 
Delphi 2006 Professional
 
#17
  Alt 26. Okt 2003, 19:11
Zitat von axelf98:
Müsste eigentlich so stimmen:
Delphi-Quellcode:
function Formatieren(KB: Extended): String;
const Genauigkeit = 1000;
var
 Dimension : String;
begin
 if KB >= 0 then Dimension := 'KiloByte';
 if KB > 1023 then Dimension := 'MegaByte';
 if KB > 1048575 then Dimension := 'GigaByte';
 if KB > 1073741823 then Dimension := 'TeraByte';
 if KB > 1099511627775 then Dimension := 'PetaByte';
 if KB > 1125899906842619 then Dimension := 'ExaByte';

if Dimension = 'KiloBytethen result := Floattostr(KB)+ ' ' + Dimension;
if Dimension = 'MegaBytethen result := Floattostr(round((KB / 1024) * Genauigkeit)/Genauigkeit) +' ' + Dimension;
if Dimension = 'GigaBytethen result := Floattostr(round((KB / 1048576) * Genauigkeit)/Genauigkeit) +' ' + Dimension;
if Dimension = 'TeraBytethen result := Floattostr(round((KB / 1073741824) * Genauigkeit)/Genauigkeit) +' ' + Dimension;
if Dimension = 'PetaBytethen result := Floattostr(round((KB / 1099511627776) * Genauigkeit)/Genauigkeit) +' ' + Dimension;
if Dimension = 'ExaBytethen result := Floattostr(round((KB / 1125899906842620) * Genauigkeit)/Genauigkeit) +' ' + Dimension;
end;
Willst du ein Preis gewinnen bei der Frage: "Wer kann noch mehr unnötige if-Bedingungen schreiben?"
Wozu bitte sehr der erste Block mit den if's bzw., wenn du den nutzt warum dann der zweite? Rechne doch gleich um.
Und mit Format(...) bekommst du sogar Tausendertrennzeichen hin.
Michael
  Mit Zitat antworten Zitat
Benutzerbild von mirage228
mirage228

 
Delphi 2010 Professional
 
#18
  Alt 26. Okt 2003, 19:26
das könnteste doch mit ner schleife machen, z.B.

Delphi-Quellcode:
function groesse(Size: Extended): Extenden;
var
  sizes: array[0..4] of string;
  cnt: integer;
begin
  sizes[0] := 'Bytes';
  sizes[1] := 'KB';
  sizes[2] := 'MB';
  sizes[3] := 'GB';
  sizes[4] := 'TB';

  Result := Size + ' ' + Sizes[0];

  if Size >= 1024 then
  repeat
    if cnt > 4 then
    begin
      cnt := 4;
      size := size;
    end else size := size / 1024;
    inc(cnt);
    Result := FloatToStrF(Size,ffGeneral,4,2) + ' ' + sizes[cnt];
  until (size < 1024) or (cnt > 4);
end;
wenn du net format benutzen willst.
David F.
  Mit Zitat antworten Zitat
axelf98

 
Delphi 2005 Personal
 
#19
  Alt 26. Okt 2003, 19:30
Entschuldigung, ich werde dann halt nicht mehr helfen.
Der Code läuft aber ohne Probleme!
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

 
Delphi 2006 Professional
 
#20
  Alt 26. Okt 2003, 19:33
Hallo??? "Klopf, klopf, jemand zu Hause McFly?"
1.) Warum vier Zeilen Code, wenn es auch mit mehr als doppelt so viel geht und wesentlich uneffiktiver und unverständlicher?
2.) Welche Funktion, die die Festplattenkapazität ermittelt, gibt bitte sehr selbige als Fließkommazahl zurück?
Michael
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 8     12 34     Letzte »    


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:59 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz