Wie kann man überprüfen, ob die aktuell angemeldeten Benutzer wird Roaming-Profil verwenden?

StackOverflow https://stackoverflow.com/questions/1200173

  •  05-07-2019
  •  | 
  •  

Frage

Wie kann ich überprüfen, ob der aktuelle Benutzer Roaming-Profil verwendet?

Gibt es eine .net Framework-Bibliothek, die helfen können?

War es hilfreich?

Lösung

Ich glaube, der einzige Weg, dies zu tun ist, um die Win32-Shell-Funktion GetProfileType . Sie müßten P verwenden / Rufen Sie den Anruf zu tätigen und dann überprüfen Sie den Überschreitungswert des pdwFlags Parameters für PT_ROAMING (die den Wert von 2).

Ich habe keine Unterschriftsprobe für diese Funktion auf pinvoke.net sehen, aber mit einer solchen einfachen Signatur:

BOOL WINAPI GetProfileType(      
    DWORD *pdwFlags
);

Erstellen man würde nicht schwer sein.

Andere Tipps

    [DllImport("Userenv.dll", EntryPoint = "GetProfileType", SetLastError = true, CharSet = CharSet.Auto)]
    public static extern bool GetProfileType(ref uint pdwflags);

    [Flags]
    enum Win32ProfileType : uint { 
        Local=0x00,
        Temporary=0x01,
        Roaming=0x02,
        Mandatory=0x04
    }


    public void SomeTest()
    {
        uint type = 0;
        if (GetProfileType(ref type)) {
            //todo
        }
    }
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top