Seguramente este código te da un error al copiar. Si nos dices el error, puede que podamos ayudarte un poco más.
Yo supongo que el problema debe estar en la parte donde generas el recurso compartido (WNetAddConnection2).
WNetAddConnection2 devuelve a su vez un código de error. Si es 0 es que la carpeta compartida se generó correctamente.
Yo supongo que debe devolver algo distinto de 0.
Código Delphi
[-]
var
NetResource: TNetResource;
vRuta : PChar;
ErrCode : integer;
begin
vRuta := PChar('c:\carpetaTmp\archivo.xml');
NetResource.dwType := RESOURCETYPE_DISK;
NetResource.lpLocalName := 'X:';
NetResource.lpRemoteName := vRuta;
NetResource.lpProvider := '';
ErrCode := WNetAddConnection2(NetResource, 'Pass','Usuario', CONNECT_UPDATE_PROFILE);
if (ErrCode=0) then
begin
CopyFile(PChar(vFile),PChar('X:\archivo.XML'),False);
WNetCancelConnection2('X:', CONNECT_UPDATE_PROFILE, True);
end else
ShowMessage('No puedo conectar la unidad de red.');