Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Software-Projekte der Mitglieder (https://www.delphipraxis.net/26-software-projekte-der-mitglieder/)
-   -   ETS - Der ExeTimeSaver #30 (https://www.delphipraxis.net/129343-ets-der-exetimesaver-30-a.html)

Regan 17. Feb 2009 13:51


ETS - Der ExeTimeSaver #30
 
ETS - Der ExeTimeSaver


ETS ist ein Programm, mit dem man die Laufzeit von vorher eingestellten Programmen dokumentieren kann. Das kann zum Beispiel bei Spielen interessant sein. Auch wird bei 98% aller Programmen der Speicherbedarf angegeben. Das Programm dokumentiert des Weiteren seine eigene Laufzeit und man kann den vorhandenen und freien RAM einsehen. Daneben wird der maximale und aktuelle Speicherverbrauch einer Anwendung angegeben. Dieser wird protokolliert und kann auf Wunsch für die letzten 12 Stunden Laufzeit eingesehen werden.

Das Programm wird ohne Installer geliefert. Es werden im Anwendungsdatenordner Daten abgelegt. Es wird nur eine Datei mitgeliefert. Diese befindet sich direkt in dem Archiv (also ohne Unterordner).

Download: http://regan.bplaced.net/drupal/site...les/ets_30.zip ~413 KB
Download: http://regan.bplaced.net/drupal/site...les/ets_30.rar ~334 KB
Seite: http://regan.bplaced.net/drupal/programme/ets

Screenshot:
http://regan.bplaced.net/drupal/site.../ets_promo.png

Zitat:

Zitat von Changelog
Version #30:
[+] Laufende Programme können hinzugefügt werden
[+] Maximale Auslastung
[+] Speicherauslastung der letzten 24 h wird für jedes Programm minutengenau aufgezeichnet[*] Performance deutlich verbessert[*] RAM-Anzeige modifiziert[*] Statistik modifiziert[*] Symbolik konsistenter gemacht.

Version #29:[*] "Inaktiv" wird bei nicht laufenden Programmen angezeigt[*] Nicht existierende Programme werden nicht entfernt.[*] RAM- Auslastung korrigiert (2 GB Grenze geknackt)
[-] Division durch Null Error

Version #28:[*] Buttons werden deaktiviert, falls nicht auswählbar[*] Fehler in der Darstellung der Statistik behoben[*] Statistikhinweise überarbeitet

Version #27:
[i] Erste Version

Wünsche/Anregungen/Kritik erwünscht.

MfG
Regan

himitsu 17. Feb 2009 13:56

Re: ETS - Der ExeTimeSaver #27
 
Zitat:

Auch wird bei 98% aller Programmen der Speicherbedarf angegeben
dein Screenshot sieht mehr nach 43% aus :angel2:

Frankfurtoder 17. Feb 2009 14:03

Re: ETS - Der ExeTimeSaver #27
 
1. Wenn ich auf den "Nach unten" Button klicke ohne einen Eintrag ausgewählt zu haben, bekomme ich eine Zugriffsverletzung (dabei war 1 eintrag in der Liste, wenn kein Eintrag in der Liste ist, dann keine Fehlermeldung).
2. Bei der Statistik steht "Bitte wähle einen Monat", man muss aber erst das Jahr, dann den Monat auswählen.
3. Wenn ich auf das Minus Zeichen gehe und kein Eintrag ist ausgewählt, fragt das Programm trotzdem ob der Eintrag entfernt werden soll. Da kein Eintrag ausgewählt ist passiert nichts. Kann man noch abfragen.

Das ist mir beim ersten einblick aufgefallen.

grüße

sirius 17. Feb 2009 14:12

Re: ETS - Der ExeTimeSaver #27
 
@himi: die aufgeführten Programm müssen aktuell nicht laufen (0k). Es ist eine Liste der Programm, die du überwachst.
Aber ein Programm von mir hat keinen Speicherverbrauch.

Fehler:
  1. Bei der Statistik bekomme ich eine Division durch null (nach Auswahl des Monats)
  2. Nach dem Button "Einstellungen" kommt ein Fenster namens "Optionen", wenn ich das zu allererst öffne und dann wieder schließe komt die Fehlermeldung, dass der eine Eintrag doch bitte größer 24 sein soll. Die 0, die dort steht, stammt aber nicht von mir.
  3. Mein RAM wird mit 2GB angegeben, ich besitze 3GB.

Regan 18. Feb 2009 14:30

Re: ETS - Der ExeTimeSaver #28
 
Zitat:

Zitat von sirius
@himi: die aufgeführten Programm müssen aktuell nicht laufen (0k). Es ist eine Liste der Programm, die du überwachst.
Aber ein Programm von mir hat keinen Speicherverbrauch.

Vollkommen richtig.

Zitat:

Zitat von sirius
Fehler:
  1. Bei der Statistik bekomme ich eine Division durch null (nach Auswahl des Monats)
  2. Nach dem Button "Einstellungen" kommt ein Fenster namens "Optionen", wenn ich das zu allererst öffne und dann wieder schließe komt die Fehlermeldung, dass der eine Eintrag doch bitte größer 24 sein soll. Die 0, die dort steht, stammt aber nicht von mir.
  3. Mein RAM wird mit 2GB angegeben, ich besitze 3GB.

2. habe ich gefixt. 1. hoffentlich auch.
Zu 3.: Ich kann dir nicht sagen, warum das nicht funktioniert. Ich habe den Code von hier genommen. Der Code hier im Forum macht bei mir nicht das, was er soll. Vielleicht hast du ja auch nur 2GB angesteckt :wink: .

Zitat:

Zitat von Frankfurtoder
1. Wenn ich auf den "Nach unten" Button klicke ohne einen Eintrag ausgewählt zu haben, bekomme ich eine Zugriffsverletzung (dabei war 1 eintrag in der Liste, wenn kein Eintrag in der Liste ist, dann keine Fehlermeldung).
2. Bei der Statistik steht "Bitte wähle einen Monat", man muss aber erst das Jahr, dann den Monat auswählen.
3. Wenn ich auf das Minus Zeichen gehe und kein Eintrag ist ausgewählt, fragt das Programm trotzdem ob der Eintrag entfernt werden soll. Da kein Eintrag ausgewählt ist passiert nichts. Kann man noch abfragen.

Alles behoben.

Version #28 veröffentlicht. Alles weitere im ersten Post.

himitsu 18. Feb 2009 14:54

Re: ETS - Der ExeTimeSaver #28
 
Liste der Anhänge anzeigen (Anzahl: 1)
Dein Programm wird nur als 2GB-Version erstellt ... du mußt da nachträglich was patchen (in neuen Delphiversionen geht das "glaub ich" auch direkt im QuellCode, mit {$SetPEFlags ...} ) ... ich weiß zwar grad nicht was, aber such mal nach "3GB" bzw. "PE-Flags" ... ansonsten wird in deinem Programm, bei diesen Funktionen, alles auf 2 GB (Integergrenzen) runtergerundet.


Zitat:

Zitat von Regan
Vollkommen richtig.

dann würde mir da aber eine maximale/durchschnittliche Angabe des Verbrauches besser gefallen, denn den aktuellen wert liefert mir auch der Taskmanager.

sirius 18. Feb 2009 15:16

Re: ETS - Der ExeTimeSaver #28
 
Liste der Anhänge anzeigen (Anzahl: 2)
Gegen das 2GB Problem von GlobalMemorystatus, gibt es auch noch GlobalMemoryStatusEx:
Delphi-Quellcode:
type DWORDLONG=int64; //uint64 passt besser zu DWORDLONG
                      //bringt aber unter Delphi 7 falsche Werte
type TMemoryStatusEx=packed record
        dwLength: DWORD;
        dwMemoryLoad: DWORD;
        ullTotalPhys: DWORDLONG;
        ullAvailPhys: DWORDLONG;
        ullTotalPageFile: DWORDLONG;
        ullAvailPageFile: DWORDLONG;
        ullTotalVirtual: DWORDLONG;
        ullAvailVirtual: DWORDLONG;
        ullAvailExtendedVirtual: DWORDLONG;
     end;


function GlobalMemoryStatusEx(var lpBuffer: TMemoryStatusEx):bool; stdcall;
   external 'kernel32.dll' name 'GlobalMemoryStatusEx';

procedure TForm1.Button1Click(Sender: TObject);
var mem:TMemoryStatusEx;
begin
  mem.dwLength:=sizeof(mem);
  GlobalMemoryStatusEx(mem);
  showmessage(inttostr(memEx.ullTotalPhys)); // -> 3211505664
end;
Ansonsten besteht noch der Fehler mit der Division durch 0 und mein Programm benötigt keinen Speicher (auch wenn es läuft).

Regan 18. Feb 2009 15:17

Re: ETS - Der ExeTimeSaver #28
 
Zitat:

Zitat von himitsu
Dein Programm wird nur als 2GB-Version erstellt ... du mußt da nachträglich was patchen (in neuen Delphiversionen geht das "glaub ich" auch direkt im QuellCode, mit {$SetPEFlags ...} ) ... ich weiß zwar grad nicht was, aber such mal nach "3GB" bzw. "PE-Flags" ... ansonsten wird in deinem Programm, bei diesen Funktionen, alles auf 2 GB (Integergrenzen) runtergerundet.

OK, ich habe da hier was gefunden. Ich schaue mir das mal mit an. So richtig testen kann ich das aber nicht, habe ja nur 256 MB :wink: .
Zitat:

Zitat von himitsu
Zitat:

Zitat von Regan
Vollkommen richtig.

dann würde mir da aber eine maximale/durchschnittliche Angabe des Verbrauches besser gefallen, denn den aktuellen wert liefert mir auch der Taskmanager.

Das stimmt, ich habe es mir mit aufgeschrieben und werde das auf jeden Fall umsetzten. Kommt vielleicht sogar schon in der nächsten Version, mal schauen.


Zitat:

Zitat von sirius
Gegen das 2GB Problem von GlobalMemorystatus, gibt es auch noch GlobalMemoryStatusEx:
Delphi-Quellcode:
type DWORDLONG=int64; //uint64 passt besser zu DWORDLONG
                      //bringt aber unter Delphi 7 falsche Werte
type TMemoryStatusEx=packed record
        dwLength: DWORD;
        dwMemoryLoad: DWORD;
        ullTotalPhys: DWORDLONG;
        ullAvailPhys: DWORDLONG;
        ullTotalPageFile: DWORDLONG;
        ullAvailPageFile: DWORDLONG;
        ullTotalVirtual: DWORDLONG;
        ullAvailVirtual: DWORDLONG;
        ullAvailExtendedVirtual: DWORDLONG;
     end;


procedure GlobalMemoryStatusEx(var lpBuffer: TMemoryStatusEx); stdcall;
   external 'kernel32.dll' name 'GlobalMemoryStatusEx';

procedure TForm1.Button1Click(Sender: TObject);
var mem:TMemoryStatusEx;
begin
  mem.dwLength:=sizeof(mem);
  GlobalMemoryStatusEx(mem);
  showmessage(inttostr(memEx.ullTotalPhys)); // -> 3211505664
end;

Zitat:

Zitat von sirius
Ansonsten besteht noch der Fehler mit der Division durch 0 und mein Programm benötigt keinen Speicher (auch wenn es läuft).

Mist, das dachte ich mir. Das Problem dabei ist: Ich kann den Div durch 0-Error nicht reproduzieren. Deshalb ist es auch so schwer den Fehler zu finden.
Zu dem Speicher: Es ist seltsam, aber bei manchen Programmen wird wirklich kein Speicherverbrauch angezeigt (zumindest bei der Funktion, die ich nutze). Deshalb habe ich auch geschrieben, dass es 98% aller Programme sind :wink: .

Larsi 18. Feb 2009 15:26

Re: ETS - Der ExeTimeSaver #28
 
Wie wärs denn wenn du eine Funktion einbaust die sagt wie lange die Programme falls Sie denn laufen schon geöffnet sind. Der Taskmanager kann das.

Zacherl 18. Feb 2009 15:33

Re: ETS - Der ExeTimeSaver #28
 
Zitat:

Zitat von Larsi
Wie wärs denn wenn du eine Funktion einbaust die sagt wie lange die Programme falls Sie denn laufen schon geöffnet sind. Der Taskmanager kann das.

Dann benutzt man doch am besten auch den Taskmanager dazu :P Warum das Rad neu erfinden ..

sirius 18. Feb 2009 15:49

Re: ETS - Der ExeTimeSaver #28
 
Vermutungen zu Fehler mit div 0
In deinem Programm hast du ein "Array of String" o.ä.
In diesem Array steht an erster Stelle das Wort "self" und an evtl. zweiter Stelle das Wort "Gesamtlaufzeit". Zum Zeitpuntk des Fehlers existiert aber anscheinend nur noch das erste Element. Jetzt ermittelst du die Länge des Arrays (=> 1) und ziehst davon 1 ab und das ist dein Divisor, der den Fehler verursacht:
Delphi-Quellcode:
//so in etwa könnte es aussehen
something := somthingelse div (length(StringArray)-1) ;
Der Fehler dürfte aber daran liegen, dass du das Array irgendiwe vorzeitig gekürzt hast.

Suche auf jeden Fall nach einem Array mit dem Inhalt Gesamtlaufzeit.


Edit: Das Array ist evtl. ein Konstantenarray, oder zeigt auf konstante Strings
Edit2: Wenn ich dne "Fehler" mit der -1 entferne läuft das Programm in meinem Fall fehlerfrei. Jetzt wird auch das Wort "Gesamtlaufzeit" im Diagramm angezeigt. das war bisher nicht der Fall, ansonsten hat sich nichts geändert.

Mal noch was zur Programmidee selbst: Da ich nicht spiele und auch anderes anscheinend nicht auf mich zutrifft, sehe ich derzeit keinen Nutzen für mich darin. Mit aber noch ein paar Features wäre es für die Programmentwicklung/Programmtest schon sinnvoll. Da meine Programme teilweise sehr lange laufen und beim testen mitten in der Nacht abstürzen, würde mich schon der Zeitpunkt und der Verlauf des Speicherverbrauchs über die letzten Stunden interessieren.

himitsu 18. Feb 2009 16:20

Re: ETS - Der ExeTimeSaver #28
 
Es wäre schön, wenn man beim Hinzufügen [+] auch einfach eines der aktiven Programme auswählen könne (evt. einen weiteren Hinzufügenbutton machen, wo man eines der aktiven Programme wählen kann)

"Wert" Für die Laufzeit klingt auch etwas ... na ja :roll:

ich hatte vorhin mal ein Problem, daß dier "Wert"/die Laufzeit zu schnell verging ... so um die 4 Sekunden pro Aktualisierung/Sekunde ... hatte davor mal zu oft auf Aktualisieren geklickt, konnte dieses Verhalten aber nicht reproduzieren.

Dann wäre es toll, wenn ein Programm mehrmals offen ist, daß die Zeit schneller verginge (eine Sekunde pro Instanz ... also bei 2 Instanzen dann doppelt so schnell)

zum Speicherbadarf:
den maximalen/durchschnittlichen verbrauch würd ich schon nett finden.

und wenn das Programm grad nicht aktiv ist, dann z.B. statt 0k lieber "inaktiv" schreiben

Delphi-Quellcode:
// Speicherbedarf = der Speicher, welchen das "aktive" Programm grad verbraucht.

// Durchschnittsumme: Int64;
// Durchschnittzähler: Integer;
// MaximalerSpeicher: Integer; // oder Int64, falls dein Programm
                                 // auch mehr als 2 GB Programmspeicher anzeigen kann

{if ProgrammIsAktiv then begin}
  // maximalen speicherverbrauch merken
  if MaximalerSpeicher > Speicherbedarf then
    MaximalerSpeicher := Speicherbedarf;
  // durchschnitt berechnen
  Inc(Durchschnittsumme, Speicherbedarf);
  Inc(Durchschnittzähler);
  // überlauf verhinden
  if (Int64Rec(Durchschnittsumme).Hi > $7fff0000)
      or (Durchschnittsumme > $7ffff000) then begin
    Durchschnittsumme := Durchschnittsumme shr 16;
    Durchschnittzähler := Durchschnittsumme shr 16;
  end;
{end;}
und die Anzeige eventuell irendwie so
Delphi-Quellcode:
if ProgrammIsAktiv then
  {Speicher}    := Speicherbedarf
else {Speicher} := 'inaktiv';
{Durchschnitt}  := Durchschnittsumme div Min(Durchschnittzähler, 1);
{Maximal}       := MaximalerSpeicher;

Regan 20. Feb 2009 15:26

Re: ETS - Der ExeTimeSaver #28
 
Zitat:

Zitat von Zacherl
Zitat:

Zitat von Larsi
Wie wärs denn wenn du eine Funktion einbaust die sagt wie lange die Programme falls Sie denn laufen schon geöffnet sind. Der Taskmanager kann das.

Dann benutzt man doch am besten auch den Taskmanager dazu :P Warum das Rad neu erfinden ..

Meiner kann das nicht :sad: .

Zitat:

Zitat von sirius
Jetzt ermittelst du die Länge des Arrays (=> 1) und ziehst davon 1 ab und das ist dein Divisor, der den Fehler verursacht

Ich habe zwei Stellen, an denen das passiert. Habe jetzt beide mal geändert. Ich hoffe, dass das jetzt nicht mehr passiert.

Zitat:

Zitat von sirius
würde mich schon der Zeitpunkt und der Verlauf des Speicherverbrauchs über die letzten Stunden interessieren.

Gut, wie stellst du dir das vor. Ich könnte dir folgendes anbieten: Eine Anzeige "Zu letzt aktiv" mit evtl. Datum und Zeit. Reicht dir der Speicherverbrauch über die letzten 24 Stunden aus? Und: Willst du den für jedes Programm einzeln, oder den gesamten Verbrauch?

Zitat:

Zitat von himitsu
Es wäre schön, wenn man beim Hinzufügen [+] auch einfach eines der aktiven Programme auswählen könne (evt. einen weiteren Hinzufügenbutton machen, wo man eines der aktiven Programme wählen kann)

Habe ich mir aufgeschrieben.

Zitat:

Zitat von himitsu
"Wert" Für die Laufzeit klingt auch etwas ... na ja :roll:

Als erstes war die Komponente ein ValueListEditor :wink: . Wird geändert.

Zitat:

Zitat von himitsu
ich hatte vorhin mal ein Problem, daß dier "Wert"/die Laufzeit zu schnell verging ... so um die 4 Sekunden pro Aktualisierung/Sekunde ... hatte davor mal zu oft auf Aktualisieren geklickt, konnte dieses Verhalten aber nicht reproduzieren.

Das Anzeigen hat mit dem Wert an sich nichts zu tun. Das Werte erhöhen habe ich in Threads ausgelagert.

Zitat:

Zitat von himitsu
Dann wäre es toll, wenn ein Programm mehrmals offen ist, daß die Zeit schneller verginge (eine Sekunde pro Instanz ... also bei 2 Instanzen dann doppelt so schnell)

Finde ich nicht so gut, denn dann kann es passieren, dass ein Programm länger läuft als die Gesamtlaufzeit.

Zitat:

Zitat von himitsu
zum Speicherbadarf:
den maximalen/durchschnittlichen verbrauch würd ich schon nett finden.

Ist in der Entwicklung :wink: , kommt bei Version #30.

Version #29 hochgeladen. Ich hoffe, dass der Div durch 0 Error jetzt endlich behoben ist. Auch sollte die 2 GB Grenze nun durchbrochen sein.

sirius 20. Feb 2009 15:46

Re: ETS - Der ExeTimeSaver #28
 
Zitat:

Zitat von Regan
Ich habe zwei Stellen, an denen das passiert. Habe jetzt beide mal geändert. Ich hoffe, dass das jetzt nicht mehr passiert.

Na, ich hoffe du hast nicht nur geändert, sondern auch gewusst warum :gruebel: Klingt grad so, als würdes du wild ändern und testen, ob es noch läuft :mrgreen:

Testen kann ich frühestens wieder am Montag.

Zitat:

Gut, wie stellst du dir das vor. Ich könnte dir folgendes anbieten: Eine Anzeige "Zu letzt aktiv" mit evtl. Datum und Zeit. Reicht dir der Speicherverbrauch über die letzten 24 Stunden aus? Und: Willst du den für jedes Programm einzeln, oder den gesamten Verbrauch?
24h reichen. Aber für jedes Programm einzeln.
Was ist zuletzt aktiv? Kriegst du mit, wann das Programm hängenbleibt (->"Keine Rückmeldung") oder nur wann es beendet wurde. Mich würde ja beides interessieren.

himitsu 20. Feb 2009 15:49

Re: ETS - Der ExeTimeSaver #28
 
Zitat:

Zitat von Regan
Meiner kann das nicht :sad: .

schau mal unter Ansicht > Spalten auswählen...

Zitat:

Zitat von Regan
Finde ich nicht so gut, denn dann kann es passieren, dass ein Programm länger läuft als die Gesamtlaufzeit.

aber wenn 2 Instanzen offen sind, dann läuft es ja doppelt, also insgesamt doppelt so lang :angel2:

nja gut, muß ja nicht unbedingt sein ... wer startet auch ein programm gleichzeitig mehrfach :stupid:

sirius 20. Feb 2009 15:51

Re: ETS - Der ExeTimeSaver #28
 
Zitat:

Zitat von himitsu
wer startet auch ein programm gleichzeitig mehrfach :stupid:

Ich, zu Hause. Also meine Freundin auf ihrem Account und ich auf meinem :stupid:

Regan 20. Feb 2009 16:02

Re: ETS - Der ExeTimeSaver #28
 
Zitat:

Zitat von sirius
Zitat:

Zitat von Regan
Ich habe zwei Stellen, an denen das passiert. Habe jetzt beide mal geändert. Ich hoffe, dass das jetzt nicht mehr passiert.

Na, ich hoffe du hast nicht nur geändert, sondern auch gewusst warum :gruebel: Klingt grad so, als würdes du wild ändern und testen, ob es noch läuft :mrgreen:

Das Ding ist: Ich prüfe am Anfang der gesamten Routine auf eventuelle Probleme. Allerdings hat das bis jetzt nichts geholfen :? .

Zitat:

Zitat von sirius
Testen kann ich frühestens wieder am Montag.

OK. Das wäre sehr nett.

Zitat:

Zitat von sirius
Zitat:

Gut, wie stellst du dir das vor. Ich könnte dir folgendes anbieten: Eine Anzeige "Zu letzt aktiv" mit evtl. Datum und Zeit. Reicht dir der Speicherverbrauch über die letzten 24 Stunden aus? Und: Willst du den für jedes Programm einzeln, oder den gesamten Verbrauch?
24h reichen. Aber für jedes Programm einzeln.
Was ist zuletzt aktiv? Kriegst du mit, wann das Programm hängenbleibt (->"Keine Rückmeldung") oder nur wann es beendet wurde. Mich würde ja beides interessieren.

Ich bekomme nur mit, wann es nicht mehr läuft. Diesen Wert würde ich dann einfach speichern und anzeigen lassen, wobei ich mich übers Wochenende mit dem Vorschlag "Keine Rückmeldung" mal beschäftigen könnte.

Zitat:

Zitat von himitsu
Zitat:

Zitat von Regan
Meiner kann das nicht :sad: .

schau mal unter Ansicht > Spalten auswählen...

Gibt es nicht, ich habe XP SP3.

Zitat:

Zitat von sirius
Zitat:

Zitat von himitsu
wer startet auch ein programm gleichzeitig mehrfach :stupid:

Ich, zu Hause. Also meine Freundin auf ihrem Account und ich auf meinem :stupid:

Ich setzte den Vorschlag trotzdem nicht um :wink: .

Florian H 20. Feb 2009 16:17

Re: ETS - Der ExeTimeSaver #28
 
Die RAM-Anzeige finde ich etwas seltsam .. andersrum erscheint es mir logischer: "500.000kb / 2.000.000kb" -> "500.000 von 2.000.000kb".

Ansonsten kann ich dem Vorschlag, dass man die hinzuzufügenden Programme einach aus einer Liste der momentan laufenden Programme wählen kann, auch sehr gut , ist nämlich schon relativ umständlich und nervig, sich erst durch diverse Ordner zu wühlen, bis man endlich die EXE gefunden hat.

Außerdem wär's praktisch, wenn im Statistik-Dialog das aktuelle Jahr und der aktuelle Monat schon ausgewählt sind, in 90% der Fälle wird man wohl genau das Diagramm sehen wollen.


--> werde das Programm ggf später gerne nutzen (bin ein kleiner Statistikfreak), allerdings erst, wenn man Programme einfacher (s.o.) hinzufügen kann, so ist das zu nervig :S

himitsu 21. Feb 2009 23:05

Re: ETS - Der ExeTimeSaver #28
 
nach ein paar Stunden Laufzeit bekomm ich urplötzlich Fehlermeldungen um die Ohren gehauen:

Zugriffsverletzungen bei Adresse $00000000 bzw $00000001.

Also so alle 'ner Sekunde eine Weitere ... nur via Taskmanager läßt sich das beheben *kill your prog*

Wo speichert dein Programm eigentlich die Einstellungen ab?
(oder hab ich da nur irgendwo was überlesen)

Ja und kann's sein, daß du einfach einträge löschst, wenn das zugehörige Programm mal nicht gefunden werden kann?

Regan 22. Feb 2009 15:24

Re: ETS - Der ExeTimeSaver #28
 
Zitat:

Zitat von himitsu
nach ein paar Stunden Laufzeit bekomm ich urplötzlich Fehlermeldungen um die Ohren gehauen:

Zugriffsverletzungen bei Adresse $00000000 bzw $00000001.

Also so alle 'ner Sekunde eine Weitere ... nur via Taskmanager läßt sich das beheben *kill your prog*

Oh, nicht schön. Keine Ahnung, an was das liegt. Beobachte das einfach mal weiter.

Zitat:

Zitat von himitsu
Wo speichert dein Programm eigentlich die Einstellungen ab?
(oder hab ich da nur irgendwo was überlesen)

Ja, steht im ersten Post :wink: . Anwendungsdatenordner.

Zitat:

Zitat von himitsu
Ja und kann's sein, daß du einfach einträge löschst, wenn das zugehörige Programm mal nicht gefunden werden kann?

Ja, das will/muss ich aber ändern, da ich meinen USB-Stick auch nicht immer angeschlossen habe. Allerdings weiß ich noch nicht, wie ich das umsetzten werde.

himitsu 22. Feb 2009 16:05

Re: ETS - Der ExeTimeSaver #28
 
ist jetzt schon 3 Mal passiert ... einmal nach 5 Stunden und einmal nach 17 stunden laufteit des Programmes.
konnte aber nicht rausbekommen womit das zusammenhängt.

erstwer Verdacht mit trillian war's wohl nicht ... beim ersten Absturz machte dieses rein zufällig in der selben Sekunde ein Statusfenster auf ... aber inzwischen waren so viele statusfenster da ......


joar, bei mir war's ne Neuinstallation von Nero und danach fand ich nicht mehr in der Liste.

sirius 23. Feb 2009 08:38

Re: ETS - Der ExeTimeSaver #28
 
Jetzt habe ich Fehler beim Download.
Sind letzte Woche auch schon aufegtreten, aber jetzt nur noch.

Die Zip-Datei ist (jedes mal ein wenig anders) nur ca. 160-170kb groß und natürlich fehlerhaft.
Lade mit IE 7 runter.

himitsu 23. Feb 2009 10:25

Re: ETS - Der ExeTimeSaver #28
 
Das war mir schon anfangs aufgefallen, aber dachte es liegt an mir.
Mußte mir die Datei auch mehrmals runterladen, bevor sie sich entpacken ließ.

Regan 25. Feb 2009 13:29

Re: ETS - Der ExeTimeSaver #28
 
Zitat:

Zitat von himitsu
ist jetzt schon 3 Mal passiert ... einmal nach 5 Stunden und einmal nach 17 stunden laufteit des Programmes.
konnte aber nicht rausbekommen womit das zusammenhängt.

Ich glaube den Fehler gefunden zu haben. Es liegt höchswahrscheinlich an der GetMemoryStatusEx procedure. Ich werde mal noch die Woche beobachten, bis ich da eine neue Version herausbringe.

Zitat:

Zitat von himitsu
joar, bei mir war's ne Neuinstallation von Nero und danach fand ich nicht mehr in der Liste.

Wie gesagt, wird geändert.

Zitat:

Zitat von sirius
Jetzt habe ich Fehler beim Download.
Sind letzte Woche auch schon aufegtreten, aber jetzt nur noch.

Die Zip-Datei ist (jedes mal ein wenig anders) nur ca. 160-170kb groß und natürlich fehlerhaft.
Lade mit IE 7 runter.

Ich habe das mal gerade selbst ausprobiert, bei mir kommt der gleiche Fehler. Im Firefox geht es hingegen. Ich kann dir aber leider nicht sagen, woran das liegen könnte. Die Datei existiert in dem Pfad und du greifst direkt darauf zu. Es kann sich also fast nur um ein Problem im Internetexplorer handeln. Die nächste Version werde ich deswegen auch hier hochladen. Das wird kommendes Wochenende passieren.

himitsu 25. Feb 2009 13:41

Re: ETS - Der ExeTimeSaver #28
 
Zitat:

Zitat von Regan
Es kann sich also fast nur um ein Problem im Internetexplorer handeln.

ich hatte das Problem im Firefox :?

Ach ja, wegen der Exception: letztens kam die nach dem Ruhezustand (Hibernate) ... direkt nach dem Hochfahren und kurz vor der Anmeldung (Passworteingabe) fing es damit an.

blablab 13. Mär 2009 08:10

Re: ETS - Der ExeTimeSaver #28
 
Ich krieg immer nen Fehler "Komponente mit der bezeichnung Prog0 existiert bereits" wenn ich auf hoch der runter drück. Vielleicht liegts daran, dass ich 20 Programme n de Liste hab...
wohin speichert das Prog eigentlich die daten?

Edit:
Statt "immer oben" würde ich schreiben "immer im vordergrund"

außerdem werden die F-Tasten bis unendlich durchnummeriert, ist aber net unbedingt schlimm

und was mich auch n bisschen wundert ist, dass rechts der gesamtspeicher steht und links wieviel man übrig hat. eigentlich ist mans doch andersrum gewöhnt und es macht auch mehr sinn. Denn du trennst es ja durch ein /, also könnte man es als ein Bruch verstehen, der nur andersrum sinn macht.

und was n bisschen blöd ist, ist dass dein programm selber bei mir noch am meisten auslastung braucht :)

ps: was sind das eig für zeitangaben? sind das kleinste hundertstel sekunden? die haben bei mir irgendwie keinen Bezug zur realität...

und außerdem sind bei mir 90% der programme "inaktiv" obwohl sie gerade laufen...

rollstuhlfahrer 13. Mär 2009 14:08

Re: ETS - Der ExeTimeSaver #28
 
ich frag mich, wie du deine Aktiv-Zeit ermittelst. Wenn der Prozess-Explorer 10 sekunden im maximierten Zustand 10 sekunden im Vordergrund ist, dann zählt dein Programm ganze 2 Sekunden dazu. Die Zeit stimmt aber auch nicht mit der CPU-Zeit überein.
Ansonsten werd ich das Programm bestimmt gebrauchen können.

Bernhard

Regan 14. Mär 2009 19:18

Re: ETS - Der ExeTimeSaver #30
 
Zitat:

Zitat von blablab
Ich krieg immer nen Fehler "Komponente mit der bezeichnung Prog0 existiert bereits" wenn ich auf hoch der runter drück. Vielleicht liegts daran, dass ich 20 Programme n de Liste hab...

:shock: Na wenn du denkst, dass das gut geht. Eigentlich ist das für kleinere Aufgaben gedacht.
Zitat:

Zitat von blablab
wohin speichert das Prog eigentlich die daten?

Steht im ersten Post: Anwendungsdatenordner: Regan/ETS

Zitat:

Zitat von blablab
Edit:
Statt "immer oben" würde ich schreiben "immer im vordergrund"

Wird geändert.

Zitat:

Zitat von blablab
außerdem werden die F-Tasten bis unendlich durchnummeriert, ist aber net unbedingt schlimm

Nö :P . Nur bis 24, für diejenigen, die eine Tastatur mit 24 Funktionstasten haben ;) .

Zitat:

Zitat von blablab
und was mich auch n bisschen wundert ist, dass rechts der gesamtspeicher steht und links wieviel man übrig hat. eigentlich ist mans doch andersrum gewöhnt und es macht auch mehr sinn. Denn du trennst es ja durch ein /, also könnte man es als ein Bruch verstehen, der nur andersrum sinn macht.

Sollte geändert sein.

Zitat:

Zitat von blablab
und was n bisschen blöd ist, ist dass dein programm selber bei mir noch am meisten auslastung braucht :)

Probier einfach mal die neue Version, da sollte das behoben sein. Für deine Version: Wenn du die Option "Speicher aufzeichnen" deaktivert, sollte es auch weniger werden.

Zitat:

Zitat von blablab
ps: was sind das eig für zeitangaben? sind das kleinste hundertstel sekunden? die haben bei mir irgendwie keinen Bezug zur realität...
und außerdem sind bei mir 90% der programme "inaktiv" obwohl sie gerade laufen...

Ich hoffe mal, dass das gefixt ist.

Zitat:

Zitat von rollstuhlfahrer
ich frag mich, wie du deine Aktiv-Zeit ermittelst. Wenn der Prozess-Explorer 10 sekunden im maximierten Zustand 10 sekunden im Vordergrund ist, dann zählt dein Programm ganze 2 Sekunden dazu.

Habe ich auch schon bei einem Kumpel feststellen müssen. Ich weiß nicht, woran das liegen kann, weil bei mir das Programm einwandfrei funktioniert. Du könntest mir aber einen großen Gefallen tun, indem du die neue Version mal testest und mir danach sagst, ob das immernoch auftritt. Dann würde ich mich mal mit dir in Verbindung setzten wollen.

Und damit möchte ich auch gleich Version 30 vorstellen. Alles wissenswerte könnt ihr im ersten Post nachlesen. Ich habe versucht, allen Wünschen nachzukommen. Allerdings musste ich das gesamte Programm umstülpen, weshalb einiges (noch) nicht implementiert wurde. Ich werde das aber nachreichen ;) .
Zum Download: Ich habe darauf keinen Einfluss, ob der geht, hab aber festgestellt, dass Zip-Arichive häufiger abgebrochen werden. Deshalb habe ich noch eine Rar-Variante hochgeladen.

blablab 13. Apr 2009 15:10

Re: ETS - Der ExeTimeSaver #30
 
Oh mann, jetzt hab ich endlich kapiert was dein Programm macht :-D
Ich dachte immer das zählt die CPU-Zeit...

Egal, auf jeden Fall gefällt mir deine neue Version und läuft wunderbar.
Wobei, ein paar Kritiken gibts immer:

Du hast "Aktuallisieren" mit 2 l geschrieben
Wenn man hoch oder runter drückt setzt du den ItemIndex auf -1, der sollte auf das aktuelle element gesetzt werden
deine einstellung "speicheraktualisierung aller" kapier ich net was das bedeutet
und "immer oben" wolltest du in "immer im Vordergrund" ändern


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