Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 09-11-2011
jonydread jonydread is offline
Miembro
NULL
 
Registrado: nov 2011
Posts: 157
Poder: 15
jonydread Va por buen camino
Problema con shortname

hola amigos tengo un problema con un shortname
lo que pasa que envio un archivo a un programa en cmd que no me acepta las rutas comunes
shortname me sirve pero si tengo un archivo en c:\mi archivo me da un error
este es mi codigo
Código Delphi [-]
procedure TForm1.Button2Click(Sender: TObject);
var
  ShortName: array[0..255] of char;

begin
     GetShortPathName(PChar(opendialog1.FileName), @ShortName, Length(opendialog1.FileName));
       if FileExists(Opendialog1.FileName) then
        ShellExecute(Handle, 'open', 'arch.cmd', PChar(@ShortName), nil, SW_NORMAL)
        else ShowMessage('No se ha cargado Archivo');
    end;
si existe alguna otra forma de realizarlo agradeceria mucho su ayuda!
he buscado por google pero no encuentro como realizarlo
gracias!!
Responder Con Cita
  #2  
Antiguo 09-11-2011
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Prueba así a ver si te funciona.

Cita:
Empezado por jonydread Ver Mensaje
hola amigos tengo un problema con un shortname
lo que pasa que envio un archivo a un programa en cmd que no me acepta las rutas comunes
shortname me sirve pero si tengo un archivo en c:\mi archivo me da un error
este es mi codigo
Código Delphi [-]
Procedure TForm1.Button2Click(Sender: TObject);
 var   ShortName: array[0..255] of char;
 begin      GetShortPathName(PChar(opendialog1.FileName), @ShortName, Length(opendialog1.FileName));        
if FileExists(Opendialog1.FileName) then
         ShellExecute(Handle, 'open', 'arch.cmd', QuotedStr(PChar(@ShortName)), nil, SW_NORMAL)         
else
 ShowMessage('No se ha cargado Archivo');     
end;
si existe alguna otra forma de realizarlo agradeceria mucho su ayuda!
he buscado por google pero no encuentro como realizarlo
gracias!!

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #3  
Antiguo 09-11-2011
jonydread jonydread is offline
Miembro
NULL
 
Registrado: nov 2011
Posts: 157
Poder: 15
jonydread Va por buen camino
no entendi tu respuesta no existe forma de solucionar ese error??
pngo otro ejemplo
c:\doc\delphi\tmn.inf , dice no existe
c:\doc\delphi\copiadetmn.inf , lo convierte sin problemas
Responder Con Cita
  #4  
Antiguo 09-11-2011
jonydread jonydread is offline
Miembro
NULL
 
Registrado: nov 2011
Posts: 157
Poder: 15
jonydread Va por buen camino
disculpa no puedo editar el mensaje de arriva
agrege
Código:
QuotedStr(PChar(@ShortName))
y dice Incompatible types: 'String' and 'PAnsiChar'
tambien trate de colocar una condicion para ejecutar shortname si hay un espacio en la ruta pero no logro concretarla
puse
Código Delphi [-]
begin
if edit1.text:=' ' then
GetShortPathName(PChar(opendialog1.FileName), @ShortName, Length(opendialog1.FileName));        
if FileExists(Opendialog1.FileName) then
         ShellExecute(Handle, 'open', 'arch.cmd', PChar(@ShortName), nil, SW_NORMAL)         
else
 ShowMessage('No se ha cargado Archivo');     
end;

muchisimas gracias por la ayuda!!
Responder Con Cita
  #5  
Antiguo 09-11-2011
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Cita:
Empezado por jonydread Ver Mensaje
agrege
Código:
QuotedStr(PChar(@ShortName))
y dice Incompatible types: 'String' and 'PAnsiChar'
Intenta así:

Código Delphi [-]
PChar(QuotedStr(ShortName)

// Saludos
Responder Con Cita
  #6  
Antiguo 09-11-2011
jonydread jonydread is offline
Miembro
NULL
 
Registrado: nov 2011
Posts: 157
Poder: 15
jonydread Va por buen camino
ya no me sale error en el codigo pero igual no me toma el archivo
si esta
c:\doc\delphi\tmn.inf , dice no existe
c:\doc\delphi\copiadetmn.inf , lo toma sin problemas
existe algo para ejecutar shortname a partir de ciertos caracteres estoy muy complicado y no logro encontrar solucion
gracias!
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 21:06:12.


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