Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   widestring y string (https://www.clubdelphi.com/foros/showthread.php?t=79350)

ebeltete 27-06-2012 17:30:44

widestring y string
 
Hola amigos del club, uso delphi 5 y estoy usando un componente que tiene una propiedad filename, el tema es que cuando intento ponerle un archivo con ñ no me funciona, es de tipo widestring. He probado de todo pero no logro hacerlo funcionar con este tipo de caracteres.
Saludos

Casimiro Notevi 27-06-2012 18:01:10

¿Un componente con propiedad filename?, ¿puedes ser más explícito?

TiammatMX 27-06-2012 19:04:52

Cita:

Empezado por ebeltete (Mensaje 436137)
...un archivo con ñ no me funciona...

... y no te va a funcionar...

Desafortunadamente, los compiladores de la mayoría de los lenguajes de programación están diseñados, programados y asistidos por angloparlantes, que chauvinísticamente se olvidan que hay más idiomas, sistemas de escritura y letras...

Prueba a renombrar tu archivo o efectuar una "conversión" de los caracteres "no-ingleses" y ya no tendrás ése problema.

Nota: Un mal consejo. Si vas a programar y diseñar sistemas, olvídate de la letra "ñ", las vocales acentuadas (á, é, í, ó, ú), las diéresis (ü) y todo aquéllo que hace bello a nuestro idioma; al menos, para los nombres de archivos, variables, clases y objetos. Suerte.

ebeltete 27-06-2012 20:52:38

Es un componente para un reproductor de audio. cuando el archivo de audio a reproducir contiene alguno de estos caracteres no funciona pongo un ejemplo:
Si el archivo es: "EL AÑO DE MI VIDA.mp3" funciona solo si lo hago de la siguiente manera: "EL%20A%C3%91O%20DE%20MI%20VIDA.mp3"
Existe alguna funcion que haga este trabajo?

ecfisa 27-06-2012 23:58:12

Hola ebeltete.

Sería bueno que comentaras de que componente estas hablando así si alguién lo conoce te podrá informar. (creo que a eso se refería Casimiro)

Desconozco si Delphi 5 trae el componente TMediaPlayer, pero si lo trae:
Código Delphi [-]
procedure TForm1.btnPlayClick(Sender: TObject);
begin
 with MediaPlayer1 do
  begin
    FileName:= 'C:\ÉL ÁÑÓ DÉ MÍ VÍDÁ.mp3';
    Open;
    Play;
  end;
end
...
procedure TForm1.MediaPlayer1Notify(Sender: TObject);
begin
  if MediaPlayer1.NotifyValue = nvSuccessful then
   MediaPlayer1.Close;
end;
Si no está disponible también podes usar la función API mciSendString:
Código Delphi [-]
procedure Reproducir(aFileName: string);
begin
  mciSendString('close media', nil,0, 0);
  mciSendString(PChar('open "' + aFileName + '" alias media'), nil, 0, 0);
  mciSendString('play media', nil, 0, 0);
end;
...
procedure TForm1.btnPlayClick(Sender: TObject);
begin
  Reproducir('C:\ÉL ÁÑÓ DÉ MÍ VÍDÁ.mp3');
end;
Como podrás ver en los ejemplos anteriores, con ninguno de estos tendrás problemas con los caracteres.

Saludos.

ebeltete 28-06-2012 00:46:46

Es el componente Activex vlcplugin21 de VideoLan.


La franja horaria es GMT +2. Ahora son las 00:44:06.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi