AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Delphi string ein Alias für UnicodeString
Thema durchsuchen
Ansicht
Themen-Optionen

string ein Alias für UnicodeString

Ein Thema von EWeiss · begonnen am 29. Nov 2018 · letzter Beitrag vom 30. Nov 2018
Antwort Antwort
Seite 1 von 3  1 23      
EWeiss
(Gast)

n/a Beiträge
 
#1

string ein Alias für UnicodeString

  Alt 29. Nov 2018, 08:02
Zitat:
Hinweis: In RAD Studio ist string ein Alias für UnicodeString.
Also im Klartext..
Kann ich alle WideString mit String ersetzen (Unter D2010 32Bit und DCE 64Bit? ) oder gibt es Konvertierungsprobleme in welcher Art auch immer?

Zitat:
Sie sollten UnicodeString anstelle von WideString verwenden.
Was denn nun?
UnicodeString oder String wenn String doch das gleiche sein soll wie UnicodeString

Die Beschreibungen sind manchmal wirklich unverständlich.

Warum die Frage..
Hatte gestern einen Absturz nur bei einer Zuweisung eines ToolTip mit WideString. (Ausschließlich 64Bit, unter 32Bit war das kein Problem)
Nach der Änderung der Variable auf string war das Problem behoben.
Um so etwas in der Zukunft zu vermeiden möchte ich alle WideString nach string umlegen. (Nur was habe ich dann zu erwarten? )

gruss

Geändert von EWeiss (29. Nov 2018 um 08:17 Uhr)
  Mit Zitat antworten Zitat
Fritzew

Registriert seit: 18. Nov 2015
Ort: Kehl
678 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: string ein Alias für UnicodeString

  Alt 29. Nov 2018, 08:25
Ja kannst Du.
Allerdings mit einer Einschränkung. Immer wenn Du Delphi verlässt also z.B ein Interface zu COM,
oder Eine Dll lass es auf Widestring.
Alles was innerhalb von Delphi läuft sollte kein Problem darstellen.
Fritz Westermann
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#3

AW: string ein Alias für UnicodeString

  Alt 29. Nov 2018, 08:27
Zitat:
oder Eine Dll lass es auf Widestring.
Es geht um eine DLL (Delphi) dort hatte ich das Problem mit dem ToolTip.
Also so lassen wie es ist.

Danke!

PS:
Zitat:
Alles was innerhalb von Delphi läuft sollte kein Problem darstellen.
Die Win32Api Funktionen bzw.. System DLL's werden ja nicht in Delphi geschrieben wenn ich diese mit string anstelle WideString (wenn verlangt aufrufe) kracht es?
Also die Frage ist wann verlasse ich Delphi..

gruss

Geändert von EWeiss (29. Nov 2018 um 08:33 Uhr)
  Mit Zitat antworten Zitat
Fritzew

Registriert seit: 18. Nov 2015
Ort: Kehl
678 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: string ein Alias für UnicodeString

  Alt 29. Nov 2018, 09:11
Zitat:
Die Win32Api Funktionen bzw.. System DLL's werden ja nicht in Delphi geschrieben wenn ich diese mit string anstelle WideString (wenn verlangt aufrufe) kracht es?
Also die Frage ist wann verlasse ich Delphi.
Bei der WinApi geht es in den meisten Fällen um PChar.......
Widestring würde ich da nur benutzen wenn es auf der API Seite verlangt wird als BSTR und consorted auf der C, C++ Seite.
Aber ohne konkretes Beispiel kann man da nicht mehr sagen......
Fritz Westermann
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#5

AW: string ein Alias für UnicodeString

  Alt 29. Nov 2018, 09:32
Ich habe es mal versucht..
Das geht leider nicht nach der ändern alles auf String kracht die Anwendung

War ein test dachte könnte mir damit solche Probleme wie mit dem ToolTip dadurch ersparen.

gruss
  Mit Zitat antworten Zitat
TiGü

Registriert seit: 6. Apr 2011
Ort: Berlin
3.060 Beiträge
 
Delphi 10.4 Sydney
 
#6

AW: string ein Alias für UnicodeString

  Alt 29. Nov 2018, 10:38
Also die Frage ist wann verlasse ich Delphi..
Als Daumenregel: Immer dann, wenn du nicht in die konkrete Implementierung einer Funktion gucken kannst (Strg+Linksklick).
Du arbeitest doch viel direkt mit Windows-Funktionen, um deine GUIs aufzubauen.
Du kennst ja die Funktion function GetDC(hWnd: HWND): HDC; stdcall; aus der Windows-Unit.
Da kannst du nicht reingucken, weil sie extern in der user32.dll von Windows definiert ist.
function GetDC; external user32 name 'GetDC';
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#7

AW: string ein Alias für UnicodeString

  Alt 29. Nov 2018, 11:01
Danke.

gruss
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.685 Beiträge
 
Delphi 11 Alexandria
 
#8

AW: string ein Alias für UnicodeString

  Alt 29. Nov 2018, 11:28
Also die Frage ist wann verlasse ich Delphi..
Ich hoffe nie
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#9

AW: string ein Alias für UnicodeString

  Alt 30. Nov 2018, 07:14
Muss nochmal nachhaken..

Wenn string ein Alias für UnicodeString ist warum bekomme ich dann einen Speicherleck.

bsp.
Mein Hint ist ein string die Funktion die den Hint füllen soll gibt WideString zurück.
Warum wird mir jetzt ein Speicherleck angezeigt wenn beides doch eigentlich das gleiche sein soll ?
WideString und string = UnicodeString (D2010)

Oder bin ich heute einfach nur blöd!
Den Widestring bekomme ich einfach nicht nach string konvertiert andauernd Speicherlecks.

gruss

Geändert von EWeiss (30. Nov 2018 um 07:16 Uhr)
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#10

AW: string ein Alias für UnicodeString

  Alt 30. Nov 2018, 07:16
UnicodeString ist ein (von der Delphi RTL) verwalteter Typ, WideString nicht.
Markus Kinzler
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 3  1 23      


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 01:49 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