Declare Sub UrlCreateFromPath Lib "shlwapi.dll" Alias "UrlCreateFromPathA" (ByVal pszPath As String, ByVal pszUrl As String, ByRef pcchUrl As Long, ByVal dwFlags As Long)
Возвращается S_FALSE, если pszPath уже в формате URL. В этом случае pszPath просто копируется в pszUrl. В успешном случае возвращается S_OK
' Создадим url из полного имени файла ' например из "E:/my photo.jpg" ' мы получим "file:///E:/my%20photo.jpg" Const MAX_PATH = 260 Public Function url_encode(ByVal str_urlpath As String) As String Dim out_str As String Dim str_path As String out_str = String(MAX_PATH, 0) str_path = str_urlpath + String(100, 0) UrlCreateFromPath str_path, out_str, MAX_PATH, 0 out_str = StripTerminator(out_str) url_encode = out_str End Function ' удаляем все символы Chr$(0) Function StripTerminator(sInput As String) As String Dim ZeroPos As Long ZeroPos = InStr(1, sInput, Chr$(0)) If ZeroPos > 0 Then StripTerminator = Left$(sInput, ZeroPos - 1) Else StripTerminator = sInput End If End Function Private Sub Command1_Click() Print url_encode("e:\myfoto.jpg") End Sub