.NET i takie tam

Special Folders

leave a comment »

O ile pobieranie położenia folderów specjalnych przy użyciu pełnego .NET Frameworka jest bardzo proste – Environment.GetFolderPath. To pobranie ścieżek do tych folderów, na urządzeniu mobilnym wymaga wykorzystania funkcji natywnej: SHGetSpecialFolderPath. Metoda:

using System.IO;
using System.Runtime.InteropServices;

[DllImport("coredll", EntryPoint = "SHGetSpecialFolderPath", SetLastError = false)]
internal static extern int SHGetSpecialFolderPath(IntPtr hwnd, StringBuilder path,
      int folder, int create);

/// <summary>
/// Gets special folder path.
/// </summary>
/// <returns>Returns folder path. If the folder doesn't exist return
/// empty string.</returns>
public static string GetFolderPath(System.Environment.SpecialFolder folder)
{
    StringBuilder path = new StringBuilder(255);
    int pathExist = SHGetSpecialFolderPath(IntPtr.Zero, path, (int)folder, 0);

    return pathExist > 0 ? path.ToString() : "";
}

Written by sakowicz

Czerwiec 30, 2007 @ 12:04 pm

Napisane w .NET CF

Skomentuj

Wprowadź swoje dane lub kliknij jedną z tych ikon, aby się zalogować:

Logo WordPress.com

Komentujesz korzystając z konta WordPress.com. Log Out / Zmień )

Zdjęcie z Twittera

Komentujesz korzystając z konta Twitter. Log Out / Zmień )

Facebook photo

Komentujesz korzystając z konta Facebook. Log Out / Zmień )

Google+ photo

Komentujesz korzystając z konta Google+. Log Out / Zmień )

Connecting to %s

%d bloggers like this: