ShellExecute: String zu PWideChar und wieder zu String ...

Rund um die LCL und andere Komponenten

ShellExecute: String zu PWideChar und wieder zu String ...

Beitragvon mbulm1 » 19. Sep 2019, 19:09 ShellExecute: String zu PWideChar und wieder zu String ...

Hallo Zusammen,

ich möchte gerne "ShellExecute" nutzen - aber folgendes geht nicht:

Code: Alles auswählen
ShellExecute(0, nil, PWideChar(Prog1), PWideChar(Param1), PWideChar(Verz1), 0); 


Wie kann ich aus einem String einen PWideChar machen und umgekehrt?

Bzw. wie kann ich einen PWideChar mit writeln ausgeben?

Danke vorab für Eure Hilfe!

BG mbulm1
mbulm1
 
Beiträge: 9
Registriert: 8. Aug 2019, 11:44

Beitragvon sstvmaster » 19. Sep 2019, 20:12 Re: ShellExecute: String zu PWideChar und wieder zu String .

z.B. so:
Code: Alles auswählen
 
...
var
  S: String;
  P: PWideChar;
...
  S := 'C:\Windows';
  P := PWideChar(WideString(S));
  WriteLn('
Ich bin ein PWideChar: ', String(P));
  WriteLn('
Ich bin ein String:    ', S);
...
LG Maik
sstvmaster
 
Beiträge: 226
Registriert: 22. Okt 2016, 23:12
Wohnort: Dresden
OS, Lazarus, FPC: Windows 7 32bit (L 2.0.4 FPC 3.0.4) | 
CPU-Target: 32Bit
Nach oben

Beitragvon Warf » 20. Sep 2019, 11:12 Re: ShellExecute: String zu PWideChar und wieder zu String .

Dumme Frage, warum benutzt du nicht einfach TProcess RunCommand oder ExecuteProcess?
https://wiki.freepascal.org/Executing_External_Programs
Die können das meiste was auch shellexecute kann, nur einfacher und sind nicht an Windows gebunden
Warf
 
Beiträge: 1213
Registriert: 23. Sep 2014, 17:46
Wohnort: Aachen
OS, Lazarus, FPC: Mac OSX 10.11 | Win 10 | FPC 3.0.0 | L trunk | 
CPU-Target: x86_64, i368, ARM
Nach oben

• Themenende •

Zurück zu Komponenten und Packages



Wer ist online?

Mitglieder in diesem Forum: Google [Bot] und 2 Gäste

porpoises-institution
accuracy-worried