AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Delphi RAD Studio, Delphi, C++Builder 12.2
Thema durchsuchen
Ansicht
Themen-Optionen

RAD Studio, Delphi, C++Builder 12.2

Ein Thema von wjjw · begonnen am 12. Sep 2024 · letzter Beitrag vom 17. Okt 2024
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.814 Beiträge
 
Delphi 12 Athens
 
#1

AW: RAD Studio, Delphi, C++Builder 12.2

  Alt 13. Sep 2024, 22:40
Ich arbeite alleine und nehme daher seit dem es die HighDPI Variante von Delphi gibt, immer die HighDPI Variante.
Das hat weniger was mit der Anzahl der Entwickler zu tun als mit unterschiedlichen Systemen (z.B. Desktop und Laptop). Aber auch mit nur einem Entwicklungsrechner ziehe ich es vor, die DFM in 96 PPI zu belassen. Probleme beim Hochskalieren sind leichter zu entdecken und zu beheben als solche beim Runterskalieren. Man weiß nie was die Kunden so alles noch einsetzen.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Benutzerbild von Harry Stahl
Harry Stahl

Registriert seit: 2. Apr 2004
Ort: Bonn
2.561 Beiträge
 
Delphi 12 Athens
 
#2

AW: RAD Studio, Delphi, C++Builder 12.2

  Alt 14. Sep 2024, 10:07
Ich arbeite alleine und nehme daher seit dem es die HighDPI Variante von Delphi gibt, immer die HighDPI Variante.
Das hat weniger was mit der Anzahl der Entwickler zu tun als mit unterschiedlichen Systemen (z.B. Desktop und Laptop). Aber auch mit nur einem Entwicklungsrechner ziehe ich es vor, die DFM in 96 PPI zu belassen. Probleme beim Hochskalieren sind leichter zu entdecken und zu beheben als solche beim Runterskalieren. Man weiß nie was die Kunden so alles noch einsetzen.
Ja, die DFM lasse ich auch in 96 DPI. Das hätte ich noch erwähnen sollen, das ist ja der entscheidende Punkt. Aber die Delphi IDE lasse ich natürlich in High DPI. Unter VCL ist das etwas anstrengend, da dann die Formulare so klein sind. Da ich allerdings die meisten Programme unter FMX verwende (dort gibt es diese Problematik nicht, da funktioniert sowohl in Delphi / IDE und auf allen Systemen und Monitoren alles ohne Probleme).
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.814 Beiträge
 
Delphi 12 Athens
 
#3

AW: RAD Studio, Delphi, C++Builder 12.2

  Alt 14. Sep 2024, 10:27
Unter VCL ist das etwas anstrengend, da dann die Formulare so klein sind.
Da ich fast ausschlie0lich VCL mache, ist das für mich schon eine Einschränkung. Ich hatte ja gehofft, dass sie in 12.2 eine brauchbare Lösung anbieten würden. Ist wohl schwieriger als erwartet.

Zumindest die High-DPI Unterstützung zur Laufzeit ist mittlerweile nahezu problemfrei möglich. Ein paar Kleinigkeiten kann man selbst ausbügeln. Lediglich bei Fremdkomponenten hapert es noch an der einen oder anderen Stelle.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
AJ_Oldendorf

Registriert seit: 12. Jun 2009
486 Beiträge
 
Delphi 12 Athens
 
#4

AW: RAD Studio, Delphi, C++Builder 12.2

  Alt 16. Sep 2024, 06:35
Moin zusammen,
was ich ehrlich gesagt schlimm finde, ich bekomme kein Mechanismus bei der Installation hin, um die Mobile Platform Android nachträglich zu installieren, dass beim Delphi Start nach der Installation, auch alles sauber konfiguriert ist.
Kurz zur Vorgeschichte, ich habe Delphi 12.1 in einer VM installiert (nur Windows).
Ich möchte jetzt auf Delphi 12.2 updaten mit der ISO allerdings die Android Platform dazu installieren.
Ich habe es als Admin probiert und ohne. Ich habe Delphi 12.1 vorher deinstalliert und dann erst das Setup zu 12.2 gestartet.
Ich habe Delphi 12.2 direkt installiert und beim Setupvorgang 12.1 deinstalliert und alle Registryzweige behalten (dies wäre meine bevorzugte Variante, da dann wirklich alles erhalten bleibt).
Keiner dieser Versuche führte dazu, dass "c:\Users\Public\Documents\Embarcadero\Studio\23.0 \CatalogRepository\AndroidSDK-2525-23.0.51961.7529\platform-tools\" vorhanden war und Android wirklich richtig konfiguriert wurde. Im SDK Manager wird NDK und Java richtig angezeigt, SDK immer ungültige Pfade weil der Platform-tools Ordner nicht vorhanden ist.
Ich habe schon die Tipps aus den Links unten probiert aber kein Erfolg. Es muss doch irgendeine Möglichkeit geben, dass nachträglich zu installieren und das es danach funktioniert. Mittlerweile bin ich bei 6x Versuchen der Installation, dass ist Zeit ohne Ende die da drauf geht.
Habt ihr noch ein/zwei Tipps? Kann man das SDK nicht nachträglich installieren in der Hoffnung, dass es dann mal funktioniert? Damit ich nicht immer das ganze Delphi machen muss? Also unter Tools->Features verwalten hatte ich auch Android raus und wieder rein genommen, keine Besserung. Langsam ist es wirklich nicht mehr lustig...


https://www.delphipraxis.net/214133-...r-mit-aus.html

https://www.delphipraxis.net/212615-...t-erkannt.html

https://www.delphipraxis.net/208758-...stalliert.html
  Mit Zitat antworten Zitat
ghubi01

Registriert seit: 18. Nov 2017
136 Beiträge
 
Delphi 12 Athens
 
#5

AW: RAD Studio, Delphi, C++Builder 12.2

  Alt 16. Sep 2024, 06:47
Hallo

@ AJ_Oldendorf, vielleicht hilft dir das hier weiter: https://www.delphipraxis.net/214048-...stalliert.html

MfG

ghubi01
  Mit Zitat antworten Zitat
perpeto1234

Registriert seit: 16. Nov 2020
10 Beiträge
 
#6

AW: RAD Studio, Delphi, C++Builder 12.2

  Alt 16. Sep 2024, 09:30
Nachdem am Freitag bzgl. LSP alles super lief und vom Gefühl her es insgesamt immer tolle Treffer gab, habe ich heute ständig diese Anzeige: "Codeinsight: Loading project 0%". Egal ob ich LSP-Server oder ganz Delphi neulade. Scheint wohl mit der 64Bit-Variante zusammenzuhängen. Wenn ich LSP wieder auf "nicht 64Bit" laufen lasse, klappt es.

Abgesehen davon macht es einen guten ersten Eindruck, wenn bei "Smart CodeInsight" "Uni-Test" statt "Unit-Test" steht.
Der erste Versuch mit "Erkläre mir den Code" habe ich nach 5 Minuten abgebrochen, da dort nichts kam. Also insgesamt scheinen die neuen Features mal wieder super zu funktionieren.
Angehängte Grafiken
Dateityp: png smart_codeinsight_unitest.png (6,0 KB, 49x aufgerufen)
Dateityp: png codeinsight_0_proc.png (1,4 KB, 18x aufgerufen)

Geändert von perpeto1234 (16. Sep 2024 um 09:33 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.814 Beiträge
 
Delphi 12 Athens
 
#7

AW: RAD Studio, Delphi, C++Builder 12.2

  Alt 16. Sep 2024, 09:47
Der erste Versuch mit "Erkläre mir den Code" habe ich nach 5 Minuten abgebrochen, da dort nichts kam. Also insgesamt scheinen die neuen Features mal wieder super zu funktionieren.
Ich hatte erst auch keinen Erfolg damit (ich hatte ChatGPT versucht). Erst nachdem ich $5 auf meinen Account eingezahlt hatte ging es dann nach ein paar Minuten.

Für folgenden Code-Part aus MMX
Delphi-Quellcode:
    Mail := TEmail.Create(nil);
    try
      Mail.OnMapiError := MapiError;
      Mail.WideSubject := VersionResource.FileDescription + ' ' + VersionResource.VersionAsStr + ' usage data';
      Mail.Recipient.Add('support@mmx-delphi.de');
      Mail.Text := UsageLogger.GetUsageData;
      Mail.ShowDialog := True;
      Mail.SendMail;
    finally
      Mail.Free;
    end;
bekomme ich folgende Erklärung (offenbar als MarkDown):
Zitat:
//************ Erklärung ***************
Dieser Delphi-Code erstellt eine E-Mail-Nachricht und sendet sie, um Nutzungsdaten zu protokollieren. Hier ist eine detaillierte Erklärung der Schritte und was jeder Teil des Codes bewirkt:

1. **Erstellung des E-Mail-Objekts**:
```delphi
Mail := TEmail.Create(nil);
```
Hier wird ein neues `TEmail`-Objekt mit `nil` als Besitzer erstellt. Dieses Objekt wird später verwendet, um die E-Mail zu konfigurieren und zu senden.

2. **Fehlerbehandlung**:
```delphi
Mail.OnMapiError := MapiError;
```
Hier wird eine Fehlerbehandlungsroutine (eine Methode oder Prozedur) zugewiesen, die aufgerufen wird, wenn ein MAPI-Fehler (Messaging Application Programming Interface) auftritt. Dies könnte sinnvoll sein, falls beim Senden der E-Mail ein Problem auftritt.

3. **Betreff der E-Mail**:
```delphi
Mail.WideSubject := VersionResource.FileDescription + ' ' + VersionResource.VersionAsStr + ' usage data';
```
Der Betreff der E-Mail wird gesetzt. Er besteht aus einer Datei-Beschreibung (`FileDescription`) und einer Versionsnummer (`VersionAsStr`) aus dem `VersionResource`-Objekt, gefolgt von dem Text "usage data". Hierbei wird `WideSubject` verwendet, um Unicode-Zeichen zu unterstützen.

4. **Hinzufügen eines Empfängers**:
```delphi
Mail.Recipient.Add('support@mmx-delphi.de');
```
Hier wird eine E-Mail-Adresse als Empfänger hinzugefügt. In diesem Fall ist es `support@mmx-delphi.de`.

5. **Inhalt der E-Mail**:
```delphi
Mail.Text := UsageLogger.GetUsageData;
```
Der Text oder die Nachricht der E-Mail wird festgelegt. Der Inhalt wird durch den Aufruf von `GetUsageData` der `UsageLogger`-Instanz abgerufen, die wahrscheinlich Nutzungsdaten erfasst hat.

6. **Dialog anzeigen**:
```delphi
Mail.ShowDialog := True;
```
Diese Zeile setzt die Eigenschaft `ShowDialog` auf `True`, was bedeutet, dass ein Dialog angezeigt wird, in dem der Benutzer die E-Mail vor dem Senden überprüfen kann.

7. **E-Mail senden**:
```delphi
Mail.SendMail;
```
Hier wird die E-Mail mit der `SendMail`-Methode gesendet.

8. **Ressourcenfreigabe**:
```delphi
finally
Mail.Free;
end;
```
Unabhängig davon, ob bei dem Senden der E-Mail ein Fehler aufgetreten ist oder nicht, wird das `Mail`-Objekt im `finally`-Block wieder freigegeben, um Memory-Leaks zu vermeiden. Dies ist eine gängige Praxis in objektorientierter Programmierung, um sicherzustellen, dass Ressourcen ordnungsgemäß verwaltet werden.

Zusammenfassend gesagt, der Code erstellt eine E-Mail mit bestimmten Metadaten, fügt einen Empfänger hinzu, setzt den Text der Nachricht auf Nutzungsdaten und zeigt dem Benutzer ein Dialogfeld, um die E-Mail zu überprüfen, bevor sie gesendet wird. Nach dem Senden wird das E-Mail-Objekt freigegeben.

Dies sind meine Einstellungen:
Angehängte Grafiken
Dateityp: png 16-09-2024_10-41-36.png (83,6 KB, 54x aufgerufen)
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Friday

Registriert seit: 6. Mai 2008
106 Beiträge
 
Delphi 12 Athens
 
#8

AW: RAD Studio, Delphi, C++Builder 12.2

  Alt 19. Sep 2024, 10:27
Ja, die DFM lasse ich auch in 96 DPI. Das hätte ich noch erwähnen sollen, das ist ja der entscheidende Punkt. Aber die Delphi IDE lasse ich natürlich in High DPI. Unter VCL ist das etwas anstrengend, da dann die Formulare so klein sind. Da ich allerdings die meisten Programme unter FMX verwende (dort gibt es diese Problematik nicht, da funktioniert sowohl in Delphi / IDE und auf allen Systemen und Monitoren alles ohne Probleme).
Aus welchem Grund lässt du die DFM in 96 DPI? Weil du bei unterschiedlichen Entwickler-Geräten unterschiedliche Skalierungen nutzt?

Ich überlege mir gerade fast 2000.-€ für Updates (Delphi + dann wieder notwendige Updates von 3rd Party Komponenten) auszugeben, aus dem einzigen Grund um dann endlich die GUI vernünftig bearbeiten zu können, was der Scaling-Fehler bei Frames zu Laufzeit bisher verhindert hat. Wenn man viel mit GUI zu tun hat macht das so echt keinen Spass auf einem 4k Monitor.
Aber die Tests der 12.2 Trial waren bisher vielversprechend.
  Mit Zitat antworten Zitat
perpeto1234

Registriert seit: 16. Nov 2020
10 Beiträge
 
#9

AW: RAD Studio, Delphi, C++Builder 12.2

  Alt 19. Sep 2024, 11:06
Wie darf ich das eigentlich mit dem 64Bit-Compiler verstehen? Das hat aber nichts mit damit zu tun, dass man VCL-Komponenten immer erst in 32bit kompilieren muss, um sie zu instalieren, oder?
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.719 Beiträge
 
Delphi 12 Athens
 
#10

AW: RAD Studio, Delphi, C++Builder 12.2

  Alt 19. Sep 2024, 11:09
Die Delphi-IDE ist 32 Bit, drum benötigt sie auch 32 Bit-Packages und somit auch die "Design"-Komponenten in 32 Bit, welche du im FormDesigner auf die Form pappen kannst.

Das ist aber in so weit unabhängig, was letztendlich in deine Programme einkompiliert wird, je nach Zielplatform.
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 07:47 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