Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Komponente in "Installierte[n] Produkte[n]" auflisten (https://www.delphipraxis.net/182756-komponente-installierte%5Bn%5D-produkte%5Bn%5D-auflisten.html)

Dennis07 16. Nov 2014 01:33

Komponente in "Installierte[n] Produkte[n]" auflisten
 
Hallo Leute,
Ich hätte mal wieder eine Frage. Habe dazu noch nichts im Internet gefunden. Vielleicht habe ich auch einfach zu wenig Ahrnung über diesen Zusammenhang, aber meines Wissens nach hat das noch niemand gefragt.

Und zwar: Manche IDE Packages in Delphi werden in der Liste mit Installierten Produktion aufgelistet. Die haben dann auch eine Beschreibung und auf dem Splashscreen ein Icon.

Wie stelle ich so etwas für mein eigenes Package ein? Wäre echt toll wenn jemand von euch da Erfahrung mit hat.
MFG

himitsu 16. Nov 2014 05:38

AW: Komponente in "Installierte[n] Produkte[n]" auflisten
 
Die Schnittstelle zur Delphi-IDE stellt die Open Tools API (OTA) dar und in den Tutorials dazu steht oft dein Gesuchtes drin. :D

Installierte Produkte: (ToolsAPI.BorlandIDEServices as IOTAAboutBoxServices120).AddPluginInfo
SplashScreen: (ToolsAPI.SplashScreenServices as IOTASplashScreenServices).AddPluginBitmap

Dennis07 16. Nov 2014 13:16

AW: Komponente in "Installierte[n] Produkte[n]" auflisten
 
Super, besten Dank, funktioniert einwandfrei! :-D

Hätte nur noch eine Frage: Wie kann ich eine Mehrzeilige Beschreibung hinzufügen?
Immer, wenn ich dort Newlines in den String packen will, werden diese ignoriert... :(

MfG

himitsu 16. Nov 2014 13:45

AW: Komponente in "Installierte[n] Produkte[n]" auflisten
 
Was sind Newlines?

Und du meinst auch die Produktbeschreibung im Infofenster?
Ansonsten nein.




#10, #13#10, #13, sLineBreak, ...

Dennis07 16. Nov 2014 14:56

AW: Komponente in "Installierte[n] Produkte[n]" auflisten
 
Sorry, ich sollte mir die englischen Begriffe Abgewöhnen.
Also, ich möchte Zeilenumbrüche in der Beschreibung meines Produkts hinzufügen (2. Parameter von AddPluginInfo(...)). Wenn ich dort versuche, einen String mit Zeilenumbrüchen (#10 bzw. #13) einzufügen, werden diese einfach ignoriert. Ich meine jedoch mal gesehen zu haben, dass so etwas möglich sein soll.

MfG

EDIT: Ach, danke, mit sLineBreak scheint es irgendwie zu funktionieren. Keine Ahrnung wieso dann nicht mit den anderen, aber danke jedenfalls. Möglicherweise wegen Unicode/Ansi inkompatibilität oder so... :)

Sir Rufo 16. Nov 2014 16:45

AW: Komponente in "Installierte[n] Produkte[n]" auflisten
 
Du darfst ruhig englische Begriffe verwenden, dann aber auch die korrekten.

Ein Zeilenumbruch ist eben ein Linebreak und kein Newline ;)

himitsu 16. Nov 2014 18:11

AW: Komponente in "Installierte[n] Produkte[n]" auflisten
 
Es gibt eben nicht den Zeilenumbruch, und nicht jede Funktion kann mit allen Varianten umgehen.

Es gibt sowas wie Standardzeilenumbrüche, welche sich in verschiedenstenen Systemen vorrangig als Standard etabliert haben, aber eben nicht immer und überall funktionieren.
Windows #13#10
Linux #10
Mac #13
uvm.

Diese sind vorallem aus der Ansteuerung von Druckern hervorgegangen.
Carriage Return, CR, \r = #13
Line Feed, LF, \n = #10

TStringList erkennt z.B. alle diese Varianten, aber verwendet selber standardmäßig Delphi-Referenz durchsuchensLineBreak.
Und diese API erkennt eben nur ausschließlich die #13#10. :stupid:

Sunec 16. Nov 2014 21:48

AW: Komponente in "Installierte[n] Produkte[n]" auflisten
 
*kann gelöscht werden*

Dennis07 17. Nov 2014 00:20

AW: Komponente in "Installierte[n] Produkte[n]" auflisten
 
Zitat:

Zitat von Sir Rufo (Beitrag 1279950)
Du darfst ruhig englische Begriffe verwenden, dann aber auch die korrekten.

Ein Zeilenumbruch ist eben ein Linebreak und kein Newline ;)

Ehm, sorry, aber ohne das jetzt zum Thema machen zu wollen und ohne besserwisserisch rüber kommen zu wollen, aber nach allen gängigen Wörterbüchern ist zwar "newline" die englische Übersetzung eines "Zeilenvorschubs", allerdings besteht hier nur ein formaler Unterschied in der Typographie. Wie der Zeilenumbruch, ist auch der Zeileneinschub das betreten einer neuen Zeile ("Enter"). Aber egal.

Aber vielen Dank für die Lösungen. Und ich habe bereits #10#13 probiert gehabt, genau wie #10 und #13. Da nichts funktioniert hat und ich auch keine Antwort im Internet gefunden habe, habe ich hier gefragt.

MFG

himitsu 17. Nov 2014 00:50

AW: Komponente in "Installierte[n] Produkte[n]" auflisten
 
Zitat:

#10#13
Denn richtig ist halt #13#10.
Und genau das ist aber falsch, denn für Codes, welche "alle" Kombinationen von #10, #13 und #13#10 richtig interpretieren sind das nämlich 2 Zeilenumbrüche (OSX, gefolgt von Linux).

sLineBreak entält im Delphi den Zeilenumbruch, wie er typisch für die Zielplattform ist.
In Windows also das #13#10.

PS: Im RichEdit wird, seit Version 3 oder 4, das #13 als Zeilenumbruch verwendet, was man also in "aktuelleren" Delphi-Versionen beachten sollte,
da Embarcadero die API schrottig implementiert hat, weil man auf die Idee gekommen ist das #13 durch #13#10 zu ersetzen, wenn man über TRichEdit darauf zugreift, allerdings wird es halt nicht bei allen Schnittstellen berücksichtigt. (vorallem SelStart, SelLength, CursorPos usw.)

Luckie 17. Nov 2014 01:53

AW: Komponente in "Installierte[n] Produkte[n]" auflisten
 
Zitat:

Zitat von himitsu (Beitrag 1279960)
Diese sind vorallem aus der Ansteuerung von Druckern hervorgegangen.
Carriage Return, CR, \r = #13
Line Feed, LF, \n = #10

Schreibmaschine. Schreibmaschine. Carriage ist die Walze/der Wagen bei der Schreibmaschine. Um eine neue Zeile anzufangen musste der Walze zurückfahren (carriage return) und es musst ein Zeilenvorschub (line feed) erfolgen.

himitsu 17. Nov 2014 09:44

AW: Komponente in "Installierte[n] Produkte[n]" auflisten
 
Typendrucker waren auch nur elektrische Schreibmaschinen.
Und bevor sie elektrisch wurden, konnten Computer sie eh nicht ansteuern. :rausred:

Dennis07 17. Nov 2014 13:33

AW: Komponente in "Installierte[n] Produkte[n]" auflisten
 
Ahhh..... okay, danke. Dann hatte ich wohl irgendwie einen Zahlendreher im Kopf. Danke.
Und naja, den nativen TRichEdit verwende ich eh kaum.
Aber gut zu wissen trotzdem.


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