W tym dokumencie pokazano, jak ustawić kafelek użytkownika (obrazek). W komentarzu pod koniec (Michael Anthony, 10 kwietnia, 22:45) komentator opisuje, jak uzyskać zdjęcie. Zebrałem informacje do fragmentu C#. Pamiętaj, że jest to oparte na nieudokumentowanej funkcji powłoki systemu Windows.
using System;
using System.Text;
using System.Drawing;
[DllImport("shell32.dll", EntryPoint = "#261",
CharSet = CharSet.Unicode, PreserveSig = false)]
public static extern void GetUserTilePath(
string username,
UInt32 whatever, // 0x80000000
StringBuilder picpath, int maxLength);
public static string GetUserTilePath(string username)
{ // username: use null for current user
var sb = new StringBuilder(1000);
GetUserTilePath(username, 0x80000000, sb, sb.Capacity);
return sb.ToString();
}
public static Image GetUserTile(string username)
{
return Image.FromFile(GetUserTilePath(username));
}
Zauważ, że ta funkcja Shell tworzy plik \ Users \ <USER> \ AppData ... \ <USER> .bmp i zwraca jego nazwę.
Ponadto przetestowałem go na Win7. Nie mam pojęcia o jego zgodności z wcześniejszymi wersjami systemu Windows.
Kredyty dla Joco i Michael Anthony.
Powinieneś rozważyć przejęcie dobrych odpowiedzi na swoje pytania (w tym między innymi te, które akceptujesz). –