Ver Mensaje Individual
  #8  
Antiguo 25-06-2023
Avatar de pockelsm3
pockelsm3 pockelsm3 is offline
Miembro
 
Registrado: oct 2007
Posts: 65
Reputación: 17
pockelsm3 Va por buen camino
Cita:
Empezado por lucho6007 Ver Mensaje
Hola a todos!
Supongo que el problema debe ser que la ubicación del archivo no está disponible para los dispositivos.
¿Si usas el paso UNC funciona? Esto es "\\Servidor\Directorio\Archivo.ext".
En caso que no te funcione, tenés que tener compartido algún directorio que contenga el archivo.


La función que te devuelve el paso UNC es ExpandUNCFileName, o bien podés usar la API de Windows:
Código Delphi [-]

function GetUNCName(const LocalPath: string): string;
var
  BufferSize: DWord;
  DummyBuffer: Byte;
  Buffer: Pointer;
  Error: DWord;
begin
  BufferSize := 1;
  WNetGetUniversalName(PChar(LocalPath), UNIVERSAL_NAME_INFO_LEVEL, @DummyBuffer, BufferSize);
  Buffer := AllocMem(BufferSize);
  try
    Error := WNetGetUniversalName(PChar(LocalPath), UNIVERSAL_NAME_INFO_LEVEL, Buffer, BufferSize);
    if Error <> NO_ERROR then
      begin
        SetLastError(Error);
        RaiseLastWin32Error;
      end;
    Result := PUniversalNameInfo(Buffer)^.lpUniversalName
  finally
    FreeMem(Buffer);
  end;
end;


un ejemplo de llamada es:
Código Delphi [-]
Label1.Caption := GetUNCName('y:\xyz\');


¡Espero te sirva!

gracias por ayudarme en busca de mi solucion, hice la prueba la funcion proporcionada, de igual forma sigo sin obtner el dato necesario.

en mis investigaciones mas a fondo, encontre que no es solo tranformar la ruta local a url, debo crear una api que haga ese proceso y a la vez le proporcione los recursos a la app mobile y pueda consumirlo.

gracias a todos por sus interes comtinuo de ayudar en las necesidades de los menos diestros.
Responder Con Cita