UrlCreateFromPath (shlwapi)
Last changed: -65.219.124.65

.
Summary
Converts a Windows file/path to a URL

C# Signature:

    [DllImport("shlwapi.dll", CharSet=CharSet.Auto)]
    static extern int UrlCreateFromPath(
    [In]     string path,
    [Out]    StringBuilder url,
    [In,Out] ref uint urlLength,
    [In]     unit reserved
    );

VB Signature:

Declare Function UrlCreateFromPath Lib "shlwapi.dll" (TODO) As TODO

User-Defined Types:

None.

Alternative Managed API:

Do you know one? Please contribute it!

Notes:

The return string size will be INTERNET_MAX_URL_LENGTH (defined in wininet.h) or smaller.

Tips & Tricks:

Please add some!

Sample Code:

        [STAThread]
        static void Main(string[] args)
        {
          Console.Write(@"Enter filename: ");
          string filename = Console.ReadLine();
          Console.WriteLine(UrlFromPath(filename));

          Console.Read();

        }

        private static string UrlFromPath(string filepath)
        {
          uint maxLen = 2048 + 32 + 3; //see INTERNET_MAX_URL_LENGTH
          StringBuilder url = new StringBuilder((int)maxLen);
          UrlCreateFromPath(filepath,url,ref maxLen,0);
          return url.ToString();
        }

Documentation