![]() |
Fehler E2251 StrLen
Hallo Zusammen...
Hab noch einen... E2251 Doppeldeutiger überladener Aufruf von StrLen Egal was ich Strlen übergebe... Lol Mavarik |
AW: Fehler E2251 StrLen
Und wieso kein Length()?
|
AW: Fehler E2251 StrLen
Zitat:
Gibt es da ne überladene Funktion? Mavarik |
AW: Fehler E2251 StrLen
Length liest die Längenangabe der Delphitypen aus.
Zitat:
Man muß PAnsiChar, PWideChar, PChar oder direkte Zeiger auf Char, AnsiChar und WideChar übergeben. |
AW: Fehler E2251 StrLen
Zitat:
Es war
Delphi-Quellcode:
var
S : ShortString; begin ShGetSpecialFolderPath(0,@S[1],CSIDL_Persinal,false); S[0] := AnsiChar(StrLen(@S[1])); S := S + '\'; result := S; end; |
AW: Fehler E2251 StrLen
Wo ist denn der "Persinal" Folder?
Ist das der, der immer sauber ist? :mrgreen: Zitat:
|
AW: Fehler E2251 StrLen
ShGetSpecialFolderPath und ShortString ist vollkommen unsauber.
ShortString = immer ANSI ShGetSpecialFolderPath = ANSI (bis D2007) und Unicode (ab D2009) ShGetSpecialFolderPathA wäre aber immer ANSI siehe ![]()
Delphi-Quellcode:
PS: Du mußt die Länge garnicht wissen.
var
S : array[0..MAX_PATH-1] of Char; begin ShGetSpecialFolderPath(0, @S, CSIDL_PPERSONAL, False); Result := IncludeTrailingPathDelimiter(S); // oder IncludeTrailingBackslash end; Delphi baut das StrLen von selber ein, wenn man ein 0-basierendes statisches Char-Array oder einen PChar an einen String (Variable oder Parameter) übergibt. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:03 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