Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Software-Projekte der Mitglieder (https://www.delphipraxis.net/26-software-projekte-der-mitglieder/)
-   -   Prozesse - mal wieder ein Prozeßbetrachter (und mehr) (https://www.delphipraxis.net/134360-prozesse-mal-wieder-ein-prozessbetrachter-und-mehr.html)

Dezipaitor 28. Mai 2010 20:09

Re: Prozesse - mal wieder ein Prozeßbetrachter (und mehr)
 
Zitat:

Zitat von Delphi-Laie
Lazarus ist nach meiner Beobachtung tendenziell weniger fehlertolerant als Delphi, so daß diese Arbeit auch viele (kleine) Fehler in den Delphi-Quelltexten offenbarte.

Du verwendest den ObjectFPC Modus, der inkompatibel mit Delphi ist. Er ist angelehnt an Turbo Pascal, so dass man auch noch Zeiger mit "^." angeben muss, statt nur dem Punktoperator zu nutzen. Frag Corpsman, der kann dir die Unterschiede runterbeten, besonders die mit Zeigern.


Zitat:

Zitat von Delphi-Laie
Hinzu kam auch noch eine Spalte für 32-Bit-Module (Ergebnisse sind nur unter 64 Bit möglich), ich konnte allerdings noch kein Programm finden, das welche benutzt.

Soweit ich weiß, können 64bit Prozesse 32bit Module laden, wenn man nur die Ressourcen lädt. Könnte das hier sein?

Zitat:

Zitat von Delphi-Laie
Für die volle Funktionalität empfielt sich, das Programm als Administrator bzw. mit Administratorrechten auszuführen. Damit kann man auch in den Systemprozessen und -threads fast nach Belieben schalten und walten, d.h. Prioritäten verändern oder sogar Prozesse bzw. deren Threads (gewaltsam) beenden (die Privilegien dafür holt sich das Programm zum Programmstart). Zu meinem Erstaunen läßt sich damit sogar Windows 6.1 („7“) zum Absturz bringen.

Warum? Du bist Admin, da kannst du machen was du willst. Das ist keine Sicherheitslücke und daher im Bereich des möglichen.

Zitat:

Zitat von Delphi-Laie
Das 32-Bit-Compilat funktioniert im übrigen auch und sogar unter Windows ME.

Könnte dann auch unter Win98 gehen.

Zitat:

Zitat von Delphi-Laie
Wochen-, ja monatelange Ein-Mann-Projekte können kaum fehlerfrei sein, zumal man dabei nur sein eigener Korrektor ist bzw. sein kann. Fehlerberichte sind mithin mit Dank willkommen!

*RF: Im Kontextmenü steht "Prozeß". Richtig wäre "Prozess". Das kommt öfters vor.
*Umlaute werden nicht korrekt dargestellt, was man z.b. in der Titelleiste sieht (f?r, Prioritaets?nderung).
*Die WindowsModuleFileName Spalte bei "Windowanzahl" (warum verwendest du eigentlich keine deutschen Begriffe?) enthält öfters mal Müllzeichen.
*Wozu die Spalte dwSize? Die ist eh immer gleich bei deiner SDK Version.
*Handles werden normalerweise nicht und Speicheraddressen auf keinen Fall in dezimaler Schreibweise angegeben (8791771447296 ... was sind denn das für Zahlen?)
*Man kann die Spalten garnicht größer machen, d.h. einige Daten werden einfach abgeschnitten. (Schau dir mal das an: http://www.remkoweijnen.nl/blog/wp-c...xprocesses.png )
*Beste Meldung "Fenster ohne Childwindows" :wink:
*Beste Spalten: "sichtbar?" und "enabled?"

Delphi-Laie 28. Mai 2010 20:47

Re: Prozesse - mal wieder ein Prozeßbetrachter (und mehr)
 
Danke!

Zitat:

Zitat von Dezipaitor
Zitat:

Zitat von Delphi-Laie
Lazarus ist nach meiner Beobachtung tendenziell weniger fehlertolerant als Delphi, so daß diese Arbeit auch viele (kleine) Fehler in den Delphi-Quelltexten offenbarte.

Du verwendest den ObjectFPC Modus, der inkompatibel mit Delphi ist. Er ist angelehnt an Turbo Pascal, so dass man auch noch Zeiger mit "^." angeben muss, statt nur dem Punktoperator zu nutzen. Frag Corpsman, der kann dir die Unterschiede runterbeten, besonders die mit Zeigern.

So sehr interessiert mich das nun auch wieder nicht. Ich verwandte zunächst den Delphimodus, doch als ich den FPC-Modus als ebenso funktionierend herausfand, beließ ich es dann doch bei letzterem.

Zitat:

Zitat von Dezipaitor
Zitat:

Zitat von Delphi-Laie
Hinzu kam auch noch eine Spalte für 32-Bit-Module (Ergebnisse sind nur unter 64 Bit möglich), ich konnte allerdings noch kein Programm finden, das welche benutzt.

Soweit ich weiß, können 64bit Prozesse 32bit Module laden, wenn man nur die Ressourcen lädt. Könnte das hier sein?

Vermutlich ja. Es ist einfach eine zusätzliche Funktion, die unter 64 Bit zur Verfügung steht - also baute ich sie mit ein. Vielleicht spukt sie ja mal bei irgendeinem Prozeß auch etwas ungleich null aus.

Zitat:

Zitat von Dezipaitor
Zitat:

Zitat von Delphi-Laie
Für die volle Funktionalität empfielt sich, das Programm als Administrator bzw. mit Administratorrechten auszuführen. Damit kann man auch in den Systemprozessen und -threads fast nach Belieben schalten und walten, d.h. Prioritäten verändern oder sogar Prozesse bzw. deren Threads (gewaltsam) beenden (die Privilegien dafür holt sich das Programm zum Programmstart). Zu meinem Erstaunen läßt sich damit sogar Windows 6.1 („7“) zum Absturz bringen.

Warum? Du bist Admin, da kannst du machen was du willst. Das ist keine Sicherheitslücke und daher im Bereich des möglichen.

Leider nein. Windows 7 hat es z.B. geschafft, ein Verzeichnis zu erstellen, an das ich beim besten Willen nicht herankomme. Es gelang mir einfach nicht, mich - auch als Adminstrator - als Besitzer dort mit einzutragen, geschweige denn, irgendwelche anderen Besitzer zu löschen. Also komme ich dort nicht heran. Das Zeitalter, daß man selbst als Administrator auf dem Computer alles kann und darf, geht langsam, aber sicher zu Ende.

Zitat:

Zitat von Dezipaitor
Zitat:

Zitat von Delphi-Laie
Das 32-Bit-Compilat funktioniert im übrigen auch und sogar unter Windows ME.

Könnte dann auch unter Win98 gehen.

Ist anzunehmen. Die Schnappschüsse und Enumerationen funktionieren n.m.W. schon ab Windows 95, der Prozeßschnappschuß aber mit Sicherheit nicht unter NT 4.0.

Zitat:

Zitat von Dezipaitor
*RF: Im Kontextmenü steht "Prozeß". Richtig wäre "Prozess". Das kommt öfters vor.

Oh nein, nicht doch! Die tradierte Orthographie ist nicht falsch, das hat sogar das BVerfG klargestellt. Ich verwende auch gar keinen scheinbaren Neuschrieb (in Wirklichkeit Orthographie des 18. und 19. Jahrhunderts!), sondern vermeide lediglich Inkompatibiliäten mit Sonderzeichen.

Zitat:

Zitat von Dezipaitor
*Umlaute werden nicht korrekt dargestellt, was man z.b. in der Titelleiste sieht (f?r, Prioritaets?nderung).

Das meinte ich mit Fehlern, die man kaum bemerkt, und werde es natürlich noch ändern.

Zitat:

Zitat von Dezipaitor
*Die WindowsModuleFileName Spalte bei "Windowanzahl" (warum verwendest du eigentlich keine deutschen Begriffe?) enthält öfters mal Müllzeichen.

Für die Müllzeichen kann ich nichts, und wenn das die Funktion so zurückliefert, dann wird das dort eben so erscheinen. Für Windowanzahl hätte ich natürlich auch Fensteranzahl nehmen können, und ich werde es auch tun.

Zitat:

Zitat von Dezipaitor
*Wozu die Spalte dwSize? Die ist eh immer gleich bei deiner SDK Version.

Wenn der Prozeßschnappschuß mit seinem process32first und -next (dito bei den Modulen und Threads) immer den gleichen Wert zurückliefert, dann steht dort eben immer der gleiche Wert. Mir kommt es vor allem auf die Visualisierung der drei Schnappschüsse und der drei Enumerationen an (s.o.).

Zitat:

Zitat von Dezipaitor
*Handles werden normalerweise nicht und Speicheraddressen auf keinen Fall in dezimaler Schreibweise angegeben (8791771447296 ... was sind denn das für Zahlen?)

Also wären Hexadezimalzahlen angemessener? Würde ich mich darum bemühen, auch das zu ändern.

Zitat:

Zitat von Dezipaitor
*Man kann die Spalten garnicht größer machen, d.h. einige Daten werden einfach abgeschnitten. (Schau dir mal das an: http://www.remkoweijnen.nl/blog/wp-c...xprocesses.png )

Abgeschnitten wird m.E. gar nichts, denn die Grids werden nach dem jeweils größten bzw. längsten Element jeder Spalte skaliert. Welche Spalte wird wo abgeschnitten? ColSizing hatte ich tatsächlich vergessen - das hätte eigentlich wie bei der Delphi-Variante sein sollen - auch dafür danke!

Zitat:

Zitat von Dezipaitor
*Beste Meldung "Fenster ohne Childwindows" :wink:

Ja sicher, denn wer kann denn etwas mit Kindfenstern anfangen?

Zitat:

Zitat von Dezipaitor
*Beste Spalten: "sichtbar?" und "enabled?"

Dito: Wer kann denn etwas mit „erlaubt“ oder „zugelassen“ anfangen?

Gruß

Delphi-Laie

Dezipaitor 28. Mai 2010 21:18

Re: Prozesse - mal wieder ein Prozeßbetrachter (und mehr)
 
Zitat:

Zitat von Delphi-Laie
Leider nein. Windows 7 hat es z.B. geschafft, ein Verzeichnis zu erstellen, an das ich beim besten Willen nicht herankomme. Es gelang mir einfach nicht, mich - auch als Adminstrator - als Besitzer dort mit einzutragen, geschweige denn, irgendwelche anderen Besitzer zu löschen. Also komme ich dort nicht heran. Das Zeitalter, daß man selbst als Administrator auf dem Computer alles kann und darf, geht langsam, aber sicher zu Ende.

Aber doch. Sag mir das Verzeichnis und ich sag dir, was du falsch gemacht hast. Wobei es hier gut sein kann, dass deine NTFS Struktur beschädigt wurde.


Zitat:

Zitat von Delphi-Laie
Oh nein, nicht doch! Die tradierte Orthographie ist nicht falsch, das hat sogar das BVerfG klargestellt. Ich verwende auch gar keinen scheinbaren Neuschrieb (in Wirklichkeit Orthographie des 18. und 19. Jahrhunderts!), sondern vermeide lediglich Inkompatibiliäten mit Sonderzeichen.

Und warum soll "ß" kein Sonderzeichen für andere Sprachen sein? Natürlich kannst du schreiben, wie du willst. Bedenke jedoch, dass man deine (Un-)Taten im Internet auch viel später noch lesen können wird. Ich kenne jetzt deine berufliche Situation nicht, daher will ich mich an alle wenden. Denn, ob schlechter Programmierstil oder schlechter Sprachstil, es kann sich beides schlecht auswirken auf eine berufliche Laufbahn.

Zitat:

Zitat von Delphi-Laie
Zitat:

Zitat von Dezipaitor
*Umlaute werden nicht korrekt dargestellt, was man z.b. in der Titelleiste sieht (f?r, Prioritaets?nderung).

Das meinte ich mit Fehlern, die man kaum bemerkt, und werde es natürlich noch ändern.

Ich habe sie sofort bemerkt. Sie fallen ja ins Auge. Aber das scheint mir ein Problem mit FPC/Lazarus zu sein?
Es wäre interessant zu wissen, woran das liegt. Vllt sind auch deine PAS Dateien kein UTF8 ?

Zitat:

Zitat von Delphi-Laie
Zitat:

Zitat von Dezipaitor
*Die WindowsModuleFileName Spalte bei "Windowanzahl" (warum verwendest du eigentlich keine deutschen Begriffe?) enthält öfters mal Müllzeichen.

Für die Müllzeichen kann ich nichts, und wenn das die Funktion so zurückliefert, dann wird das dort eben so erscheinen. Für Windowanzahl hätte ich natürlich auch Fensteranzahl nehmen können, und ich werde es auch tun.

Das ist die Standardausrede der Programmierer, die keine Lust haben. Prüfe die Werte, die du nutzt auf Korrektheit und schon ist das gegessen.

Zitat:

Zitat von Delphi-Laie
Zitat:

Zitat von Dezipaitor
*Wozu die Spalte dwSize? Die ist eh immer gleich bei deiner SDK Version.

Wenn der Prozßschnappschuß immer den gleichen Wert zurückliefert, dann steht dort eben immer der gleiche Wert. Mir kommt es vor allem auf die Visualisierung der drei Schnappschüsse und der drei Enumerationen an (s.o.).

Nein, das ist keine Datenausgabe, sondern eine Eingabe. Der Wert kommt von dir:
Delphi-Quellcode:
pe.dwSize:=SizeOf(TProcessEntry32);
Zitat:

Zitat von Delphi-Laie
Zitat:

Zitat von Dezipaitor
*Handles werden normalerweise nicht und Speicheraddressen auf keinen Fall in dezimaler Schreibweise angegeben (8791771447296 ... was sind denn das für Zahlen?)

Also wären Hexadezimalzahlen angemessener? Würde ich mich darum bemühen, auch das zu ändern.

Ja das hat sich vor 20-30 Jahren so eingebürgert.

Zitat:

Zitat von Delphi-Laie
Zitat:

Zitat von Dezipaitor
*Beste Meldung "Fenster ohne Childwindows" :wink:

Ja sicher, denn wer kann denn etwas mit Kindfenster anfangen?

Nanu? Da fehlte noch mein Kommentar:
Falls du für Kunden ein Programm schreiben solltest, ist diese Meldung nichts wert. Ich wusste im ersten Augenblick auch nicht, was ich damit anfangen sollte. Aber das nur so als Tipp.

Zitat:

Zitat von Delphi-Laie
Zitat:

Zitat von Dezipaitor
*Beste Spalten: "sichtbar?" und "enabled?"

Dito: Wer kann denn etwas mit „erlaubt“ oder „zugelassen“ anfangen?

Mach es andersherum: Schreib "Deaktiviert" = "Disabled". :wink:


PS:
Hast du eigentlich etwas Interessantes zu berichten, was die Konvertierung von 32bit auf 64bit betrifft? Würde mich interessieren.

Delphi-Laie 28. Mai 2010 22:10

Re: Prozesse - mal wieder ein Prozeßbetrachter (und mehr)
 
Zitat:

Zitat von Dezipaitor
Zitat:

Zitat von Delphi-Laie
Leider nein. Windows 7 hat es z.B. geschafft, ein Verzeichnis zu erstellen, an das ich beim besten Willen nicht herankomme. Es gelang mir einfach nicht, mich - auch als Adminstrator - als Besitzer dort mit einzutragen, geschweige denn, irgendwelche anderen Besitzer zu löschen. Also komme ich dort nicht heran. Das Zeitalter, daß man selbst als Administrator auf dem Computer alles kann und darf, geht langsam, aber sicher zu Ende.

Aber doch. Sag mir das Verzeichnis und ich sag dir, was du falsch gemacht hast. Wobei es hier gut sein kann, dass deine NTFS Struktur beschädigt wurde.

Die Festplatte wurde inzwischen formartiert, weil ich Windows 7 ohnehin neu aufspielte, ich kann es also nicht mehr mit Sicherheit sagen. Allerdings finde ich auf derselben Festplatte nunmehr die Systemverzeichnisse „Documents and Settings“, „Dokumente und Einstellungen“ sowie „Programme“ (letzteres erstaunlicherweise auch noch einmal als Nichtsystemverzeichnis, also doch Namensdoppelungen möglich?!), die weder Zugriff zulassen noch im Kontextmenü unter „Eigenschaften“ den Reiter „Sicherheit“ anbieten. Ich kann mich allerdings erinnern, daß das Verzeichnis, das mich ärgerte, diesen Reiter anbot, doch dort waren die Buttons „Hinzufügen“ und „Entfernen“ deaktiviert, und unter „erweitert“ unter dem Reiter „Berechtigungen“ waren nach meiner Erinnerung auch alle Buttons deaktiviert, auch bei den anderen Reitern kam ich nicht weiter, obwohl ich viele, viele Minuten an diesem Gerödel verbrachte. Ich muß dazu sagen, daß ich den damaligen und den jetzigen Zugriff von meinem Windows XP, das ich auf auf jenem Computer habe, versuchte. Genau weiß ich es nicht mehr, und es paßt ja auch nicht zur Thematik dieser Diskussion.

Zitat:

Zitat von Dezipaitor
Zitat:

Zitat von Delphi-Laie
Oh nein, nicht doch! Die tradierte Orthographie ist nicht falsch, das hat sogar das BVerfG klargestellt. Ich verwende auch gar keinen scheinbaren Neuschrieb (in Wirklichkeit Orthographie des 18. und 19. Jahrhunderts!), sondern vermeide lediglich Inkompatibiliäten mit Sonderzeichen.

Und warum soll "ß" kein Sonderzeichen für andere Sprachen sein? Natürlich kannst du schreiben, wie du willst. Bedenke jedoch, dass man deine (Un-)Taten im Internet auch viel später noch lesen können wird. Ich kenne jetzt deine berufliche Situation nicht, daher will ich mich an alle wenden. Denn, ob schlechter Programmierstil oder schlechter Sprachstil, es kann sich beides schlecht auswirken auf eine berufliche Laufbahn.

Nunja, eine jahrhundertealte, historisch gewachsene (und nachweislich überlegene!) Tradition fortzuführen, halte ich nicht unbedingt für einen schlechten Sprachstil, aber das gehört noch weniger in diese Diskussion.

Zitat:

Zitat von Dezipaitor
Zitat:

Zitat von Delphi-Laie
Zitat:

Zitat von Dezipaitor
*Umlaute werden nicht korrekt dargestellt, was man z.b. in der Titelleiste sieht (f?r, Prioritaets?nderung).

Das meinte ich mit Fehlern, die man kaum bemerkt, und werde es natürlich noch ändern.

Ich habe sie sofort bemerkt. Sie fallen ja ins Auge. Aber das scheint mir ein Problem mit FPC/Lazarus zu sein?
Es wäre interessant zu wissen, woran das liegt. Vllt sind auch deine PAS Dateien kein UTF8 ?

UTF8 hört sich für mich nach Unicode an. Meine Pas-Dateien liegen bei. Mehr kann ich dazu nicht sagen. Tja, und ausgerechnet dieser offensichtliche Fehler entging mir - Betriebsblindheit - übersehen im doppelten Sinne des Wortes.

Zitat:

Zitat von Dezipaitor
Zitat:

Zitat von Delphi-Laie
Zitat:

Zitat von Dezipaitor
*Die WindowsModuleFileName Spalte bei "Windowanzahl" (warum verwendest du eigentlich keine deutschen Begriffe?) enthält öfters mal Müllzeichen.

Für die Müllzeichen kann ich nichts, und wenn das die Funktion so zurückliefert, dann wird das dort eben so erscheinen. Für Windowanzahl hätte ich natürlich auch Fensteranzahl nehmen können, und ich werde es auch tun.

Das ist die Standardausrede der Programmierer, die keine Lust haben. Prüfe die Werte, die du nutzt auf Korrektheit und schon ist das gegessen.

Das ist für mich keine Ausrede, weil mir bis dato überhaupt nicht bewußt war, daß dort ein Fehler vorliegen könnte, zumindest nicht mit gewisser Wahrscheinlichkeit. Und selbst, wenn, so bin ich mit ziemlicher Sicherheit damit überfordert, den zu finden. Letztlich wird doch nur eine DLL-Funktion aufgerufen (die ohnehin unter 9x/ME am aussagekräftigsten ist). So ist mir auch unklar, warum der Fehler nur sporadisch auftritt. Um Ausreden geht es mir auch deshalb nicht, weil ich durchaus möchte, alle Fehler auszumerzen, sofern es in meiner Kraft liegt.

Zitat:

Zitat von Dezipaitor
Zitat:

Zitat von Delphi-Laie
Zitat:

Zitat von Dezipaitor
*Wozu die Spalte dwSize? Die ist eh immer gleich bei deiner SDK Version.

Wenn der Prozßschnappschuß immer den gleichen Wert zurückliefert, dann steht dort eben immer der gleiche Wert. Mir kommt es vor allem auf die Visualisierung der drei Schnappschüsse und der drei Enumerationen an (s.o.).

Nein, das ist keine Datenausgabe, sondern eine Eingabe. Der Wert kommt von dir:
Delphi-Quellcode:
pe.dwSize:=SizeOf(TProcessEntry32);

Nun, ich sehe aber nicht, daß ich den Wert im Quelltext zuweise, den das Programm anzeigt, sondern eben den SizeOf, der vom Programm ermittelt wird.

Zitat:

Zitat von Dezipaitor
Zitat:

Zitat von Delphi-Laie
Zitat:

Zitat von Dezipaitor
*Handles werden normalerweise nicht und Speicheraddressen auf keinen Fall in dezimaler Schreibweise angegeben (8791771447296 ... was sind denn das für Zahlen?)

Also wären Hexadezimalzahlen angemessener? Würde ich mich darum bemühen, auch das zu ändern.

Ja das hat sich vor 20-30 Jahren so eingebürgert.

Na, dann wird das zu verändern versucht. Mit strtohex und hextostring sieht es aber nicht so rosig aus.... Edit: Inttohex scheint das Gewünschte zu können. Ist allerdings m.E. nicht gerade eine glückliche, selbsterklärende Funktionsbenennung.

Zitat:

Zitat von Dezipaitor
Zitat:

Zitat von Delphi-Laie
Zitat:

Zitat von Dezipaitor
*Beste Meldung "Fenster ohne Childwindows" :wink:

Ja sicher, denn wer kann denn etwas mit Kindfenster anfangen?

Nanu? Da fehlte noch mein Kommentar:
Falls du für Kunden ein Programm schreiben solltest, ist diese Meldung nichts wert. Ich wusste im ersten Augebblick auch nicht, was ich damit anfangen sollte. Aber das nur so als Tipp.

Für Kunden schriebe ich genau das, was die haben möchten - jedoch bin ich natürlich kein Informatiker und mithin ohne kommerzielles Interesse bzw. kommerziellen Zwang. Nur, für dieses Programm bin ich selbst mein (bester?) Kunde! :wink:

Zitat:

Zitat von Dezipaitor
PS:
Hast du eigentlich etwas Interessantes zu berichten, was die Konvertierung von 32bit auf 64bit betrifft? Würde mich interessieren.

Gegenfrage: Was interessiert Dich denn, daß es für Dich interessant ist? :)
Bis auf die tlhelp64-pas-Unit, die ich benötigte, weil die jwatlhlp32-unit von FPC nicht 64-bittig ist, ist der Compilierungsbericht genauso erfreulich wie gähnend langweilig: Es funktioniert mit beiden Lazarussen perfekt; 64 Bit erzeugen nicht eine Fehlermeldung oder auch nur Warnung mehr! Lazarus ist für mich trotz des etwas schwerfälligeren, weniger komfortablen Umganges als Delphi eine ernstzunehmende Programmiersoftware.

Gruß

Delphi-Laie

Dezipaitor 3. Jun 2010 00:42

Re: Prozesse - mal wieder ein Prozeßbetrachter (und mehr)
 
Delphi-Quellcode:
pe.dwSize:=SizeOf(TProcessEntry32);
SizeOf wird zur Kompilierzeit in einen konstanten Wert umgewandelt. Der Record TProcessEntry32 ist ja bekannt, und damit auch seine Größe. D.h. da steht dann z.B. wirklich
Delphi-Quellcode:
pe.dwSize := 134;

Teekeks 3. Jun 2010 10:09

Re: Prozesse - mal wieder ein Prozeßbetrachter (und mehr)
 
Zitat:

Zitat von Delphi-Laie
Zitat:

Zitat von Dezipaitor
*Beste Meldung "Fenster ohne Childwindows" :wink:

Ja sicher, denn wer kann denn etwas mit Kindfenstern anfangen?

Und wie wäre es mit
Zitat:

Fenster ohne Unterfenster
?

Delphi-Laie 3. Jun 2010 11:56

Re: Prozesse - mal wieder ein Prozeßbetrachter (und mehr)
 
Zitat:

Zitat von Dezipaitor
Delphi-Quellcode:
pe.dwSize:=SizeOf(TProcessEntry32);
SizeOf wird zur Kompilierzeit in einen konstanten Wert umgewandelt. Der Record TProcessEntry32 ist ja bekannt, und damit auch seine Größe. D.h. da steht dann z.B. wirklich
Delphi-Quellcode:
pe.dwSize := 134;

Schon zur Kompilierzeit?

Hülle ich diese Größenzuweisung mit zwei Ausgaben ein, z.B.
Delphi-Quellcode:
showmessage(inttostr(pe.dwSize));
pe.dwSize:=SizeOf(TProcessEntry32);//oder pe.dwSize:=SizeOf(pe);
showmessage(inttostr(pe.dwSize));
, dann erscheinen - logischerweise zur Laufzeit - unterschiedliche Werte: Der erste ist abenteuerlich, der zweite dürfte/müßte stimmen. Edit: Klar, stimmt schon, was Du schreibst, denn SizeOf ist ja das, was übergeben wird, war mein Versehen.

Zitat:

Zitat von Teekeks
Zitat:

Zitat von Delphi-Laie
Zitat:

Zitat von Dezipaitor
*Beste Meldung "Fenster ohne Childwindows" :wink:

Ja sicher, denn wer kann denn etwas mit Kindfenstern anfangen?

Und wie wäre es mit
Zitat:

Fenster ohne Unterfenster
?

Danke für den Vorschlag! Als Feind der Sprachanglifizierung versuche ich, überflüssige Anglizismen zu vermeiden, so z.B. Fenster statt Window zu verwenden (dabei sind die Grundlage dessen, was dort auf dem Bildschirm gehandhabt sind, eigentlich die Formulare und nicht die Fenster). Damit kann sicher jeder etwas anfangen. Doch diese Childwindows sind m.E. dermaßen eingebürgert, daß ich bei den Kindfenstern und auch - in abgeschwächter Form - bei den Unterfenstern annehme, daß damit kaum jemand etwas anfangen kann. Diese Unterfenster sind doch auch genaugenommen keine Fenster, sondern visuelle Elemente/Komponenten/Objekte (was auch immer), oder?

Eine neue, weiter fehlerbereinigte Version dieses kleinen Programmes werde ich in Kürze in meinem Eröffnungsbeitrag veröffentlichen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:39 Uhr.
Seite 2 von 2     12   

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