Exibir mensagem anterior :: Exibir próxima mensagem |
Autor |
Mensagem |
deSordi Novato

Registrado: Quinta-Feira, 2 de Janeiro de 2014 Mensagens: 8
|
Enviada: Qua Out 29, 2014 10:52 am Assunto: [RESOLVIDO] PAnsiChar não retorna o esperado |
|
|
Pessoal..
Vejam esse código:
Código: | var
Comando: PAnsiChar;
f: string;
f := 'ARQUIVO';
Comando := PAnsiChar('SHORTCUT /f:"'+ f +'" /a:c /t:"C:\Tulips.jpg"'); |
O que a variável Comando tem depois disso?
Apenas 'S'.
Alguém saberia me dizer por que?
O que eu preciso fazer para ter uma variável do tipo PAnsiChar com esse comando completo, incluíndo as variáveis?
Editado pela última vez por deSordi em Sex Out 31, 2014 8:23 am, num total de 1 vez |
|
Voltar ao Topo |
|
 |
joemil Moderador

Registrado: Quinta-Feira, 25 de Março de 2004 Mensagens: 9100 Localização: Sinop-MT
|
Enviada: Qua Out 29, 2014 11:03 am Assunto: |
|
|
tente assim:
Código: | var
Comando: PAnsiChar;
f: string;
f := 'SHORTCUT /f:"Arquivo" /a:c /t:"C:\Tulips.jpg"'
Comando := PAnsiChar(f); |
_________________ <b>SEMPRE COLOQUE [RESOLVIDO] NO SEU POST</b>
Enviar imagens: http://tinypic.com/ |
|
Voltar ao Topo |
|
 |
deSordi Novato

Registrado: Quinta-Feira, 2 de Janeiro de 2014 Mensagens: 8
|
Enviada: Sex Out 31, 2014 7:14 am Assunto: |
|
|
Ja tentei.. mesma coisa.  |
|
Voltar ao Topo |
|
 |
deSordi Novato

Registrado: Quinta-Feira, 2 de Janeiro de 2014 Mensagens: 8
|
Enviada: Sex Out 31, 2014 7:26 am Assunto: |
|
|
Se eu tento usar como PWideChar funciona, mas como PAnsiChar continuar retornando apenas 'S'.
Código: | var
f: string;
Comando: PAnsiChar;
begin
f := 'ARQUIVO';
F := 'SHORTCUT /f:'+ F;
Comando := PAnsiChar(F);
Application.MessageBox(PWideChar(Comando), 'Teste');
Button1.Caption := PAnsiChar(Comando);
end; |
Neste teste apareceu toda a string na mensagem, mas apenas 'S' no botão.
Na depuração, antes de executar o MessageBox o valor que aparece em Comando é 'S'. |
|
Voltar ao Topo |
|
 |
deSordi Novato

Registrado: Quinta-Feira, 2 de Janeiro de 2014 Mensagens: 8
|
Enviada: Sex Out 31, 2014 7:30 am Assunto: |
|
|
deSordi escreveu: | Se eu tento usar como PWideChar funciona, mas como PAnsiChar continuar retornando apenas 'S'.
Código: | var
f: string;
Comando: PAnsiChar;
begin
f := 'ARQUIVO';
F := 'SHORTCUT /f:'+ F;
Comando := PAnsiChar(F);
Application.MessageBox(PWideChar(Comando), 'Teste');
Button1.Caption := PAnsiChar(Comando);
end; |
Neste teste apareceu toda a string na mensagem, mas apenas 'S' no botão.
Na depuração, antes de executar o MessageBox o valor que aparece em Comando é 'S'. |
No Delphi XE3 é que acontece esse problema.
Fiz um teste no Delphi 7 e funcionou normal!
E agora? |
|
Voltar ao Topo |
|
 |
deSordi Novato

Registrado: Quinta-Feira, 2 de Janeiro de 2014 Mensagens: 8
|
|
Voltar ao Topo |
|
 |
|