Its basically the same as in windows, but when your trying to set file associations to a program that lives inside a folder that has spaces in it you need to get the "short" name of that folder. In regular windows i use this:
[System.Runtime.InteropServices.DllImport("Kernel32.dll")] private static extern uint GetShortPathName(string lpszLongPath, [Out] StringBuilder lpszShortPath, uint cchBuffer);
So my question becomes, does anyone know of a built in function i can use to replace the above function, or know of a exacly what this function does so i could recreate it in C#.