Delphi-PRAXiS
Seite 111 von 120   « Erste     1161101109110111 112113     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Software-Projekte der Mitglieder (https://www.delphipraxis.net/26-software-projekte-der-mitglieder/)
-   -   XP Usermanagers 6.1 Open Source (https://www.delphipraxis.net/32538-xp-usermanagers-6-1-open-source.html)

Delphi-Laie 7. Aug 2017 15:20

AW: XP Usermanagers 6.1 Open Source
 
Zitat:

Zitat von EWeiss (Beitrag 1378240)
Die Frage die da wäre was nennst du maximal?
Das ist maximal...

Zitat:

@echo off
set _upx="upx394.exe"
set Params= --ultra-brute --no-backup
%_upx% %Params% "Deine.exe"
pause
12 fach bei 64Bit
72 fach bei 32Bit

In der Tat, das kannte ich noch nicht und komprimiert noch etwas besser, danke!

Die Größen sind nunmehr nur noch 76, 75, 58 und 57 kByte.

Der Punkt geht klar an Dich!

Delphi-Laie 7. Aug 2017 15:24

AW: XP Usermanagers 6.1 Open Source
 
Statt der Komprimationserfolge nunmehr eine Frage, bevorzugt an Dich, Luckie: Daß der Objektinspektor nicht funktioniert bzw. aktiv ist, ist bei einem Non-VCL-Programm zwangsläufig. Was mich jedoch enttäuscht, ist, daß beim Compilieren keine Haltepunkte erscheinen. Ergo läßt sich dieses Dein Programm nicht debuggen. Soll / muß das so sein, oder läßt sich Delphi in irgendeiner Weise doch zum Debugmodus überreden bzw. -listen?

himitsu 7. Aug 2017 16:11

AW: XP Usermanagers 6.1 Open Source
 
Mit Debuginfos kompilieren :zwinker:
(da wird die EXE aber Größer)

Delphi-Laie 7. Aug 2017 16:36

AW: XP Usermanagers 6.1 Open Source
 
Zitat:

Zitat von himitsu (Beitrag 1378286)
Mit Debuginfos kompilieren :zwinker:

Delphi 4 und Debuginformationen?

Bei den neueren Delphis (XEx, vielleicht auch schon eher) kann man ja zwischen Debug und Release auswählen.

Bei Delphi 4 macht es aber keinen Unterschied, ob ich in den Projektoptionen unter Debuggen alles ausschalte (ist bei VCL-Formularprogramm voreingestellt aktiviert) oder bei Luckies Usermanager diese Debugoptionen, die als Standard ausgeschaltet sind, einschalte: VCL hat bietet mir in beiden Fällen die Haltepunkte an, Non-VCL hingegen in keinem Fall.

Edit: Stimmt bei VCL nicht, die Haltepunkte verschwinden tatsächlich, aber erst nach dem Speichern der Optionen. Edit 2: Auch nicht in jedem Falle...
Edit 3: Es bringt leider auch nichts, in Luckies DPR-Datei die Compilerschalter {$D+} und/oder {$DEBUGINFO ON} ganz am Anfang einzufügen.

jaenicke 7. Aug 2017 18:02

AW: XP Usermanagers 6.1 Open Source
 
Zitat:

Zitat von Delphi-Laie (Beitrag 1378288)
Edit: Stimmt bei VCL nicht, die Haltepunkte verschwinden tatsächlich, aber erst nach dem Speichern der Optionen. Edit 2: Auch nicht in jedem Falle...

Diese Optionen standen bei Delphi 7 und früher in der .dof Datei:
Zitat:

DebugInfo=1
Wichtig: Nach der Änderung der Option das Projekt erzeugen, nicht nur normal kompilieren!

Delphi-Laie 7. Aug 2017 18:10

AW: XP Usermanagers 6.1 Open Source
 
Vielen Dank, Sebastian!

Ich hatte schon gehofft, mit diesem Deinem Hinweis den XP Usermanager endlich debuggen zu können, aber Delphi 4-7 verweigern sogar nach dem Setzen / Einschalten dieser Option in der dof-Datei hartnäckig das Setzen der Haltepunkte. Wird also immer noch nichts mit dem Debuggen.

Edit: Die von Dir genannte Option steht im Abschnitt "[Linker]". Also schaute ich in der IDE bei den Projektoptionen in die gleichnamige Rubrik, also unter "Linker". Da gibt es sogar eine Option "Mit externen Debug-Symbolen". Die war ausgeschaltet. Aber auch nach ihrem Einschalten gibt es keine Haltepunkte.

nahpets 7. Aug 2017 18:15

AW: XP Usermanagers 6.1 Open Source
 
Schau bitte mal alle eingebundenen Units durch, ob da irgendwo ein {$D-} zu finden ist, dann werden dort die Debuginfos wieder ausgeschaltet.

Ist ein leidiges Problem, das ich von Delphi 7 kenne.

Delphi-Laie 7. Aug 2017 18:25

AW: XP Usermanagers 6.1 Open Source
 
Zitat:

Zitat von nahpets (Beitrag 1378294)
Schau bitte mal alle eingebundenen Units durch, ob da irgendwo ein {$D-} zu finden ist, dann werden dort die Debuginfos wieder ausgeschaltet.

Ist ein leidiges Problem, das ich von Delphi 7 kenne.

Danke, Stephan!

Das war es zwar auch nicht, aber Du brachtest mich auf die richtige Fährte: Es liegt an der eingebundenen bzw. konkret aufgerufenen

Delphi-Quellcode:
{$I CompilerSwitches.inc}


Diese entfernt bzw. auskommentiert, und schon sind die Haltepunkte da! :-D

Delphi-Laie 8. Aug 2017 09:11

AW: XP Usermanagers 6.1 Open Source
 
So, einen ersten kleinen Fehler habe ich entdeckt. Klein bezieht sich nicht auf seine Folge - immerhin beendet sich das Programm dann selbst bzw. wird von Windows beendet, allerdings ohne weiteren Schaden - sondern die Wahrscheinlichkeit seines Auftretens.

Wird dem Programm unter Extras -> Benutzer importieren eine ungültige XML-Datei angeboten, endet das Programm mit "Usermanager.exe hat ein Problem festgestellt und muss beendet werden." und danach mit "Exception Exception in Modul Usermanager.exe bei 0001BB90". Das passiert, wenn das Programm separat gestartet wird. Wird es aus der IDE heraus gestartet, kommt hingegen "Runtime Error 217 at 00011F07".

Der Fehler passiert in der Funktion "ImportXMLThread" und erstaunt mich insofern, als daß dort doch mit "try..finally" ihm entgegengewirkt wird.

Lange Rede, diesen try-Block mit einem weiteren try..except umhüllt, also
Delphi-Quellcode:
function ImportXMLThread(p: Pointer): Integer;
var
  ImPort           : TImport;
  Filename         : WideString;
begin

try
  Filename := PThreadParams(p)^.Filename;
  Import := TImport.Create(CurComputer, Filename);
  try
    if not Import.Import then
    begin
      SetCursor(LoadCursor(0, IDC_ARROW));
      case MessageBox(hApp, PChar(Format(rsImportError, [ExtractFilepath(ParamStr(0)) + LOGFILE])), PChar(APPNAME),
        MB_ICONWARNING or MB_YESNO) of
        IDYES: ShellExecute(hApp, 'open', PChar(ExtractFilepath(ParamStr(0)) + LOGFILE), nil, nil, SW_NORMAL)
      end;
    end;
  finally
    Import.Free;
  end;
except
//ggf. eine gewünschte Fehlerausgabe
end;

Result := 0;
end;
, und schon läuft auch das reibungslos.

Aviator 8. Aug 2017 09:53

AW: XP Usermanagers 6.1 Open Source
 
Du könntest ein Pull/Merge-Request auf GitHub erstellen damit Sebastian das einpflegen kann. :-D


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:22 Uhr.
Seite 111 von 120   « Erste     1161101109110111 112113     Letzte »    

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