كيفية معرفة ما اذا كان المستخدم دخوله حاليا هو استخدام التشكيل الجانبي المتجول؟

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

  •  05-07-2019
  •  | 
  •  

سؤال

وكيف يمكنني معرفة ما إذا كان المستخدم الحالي يستخدم التشكيل الجانبي المتجول؟

هل هناك أي مكتبة .NET Framework التي يمكن أن تساعد؟

هل كانت مفيدة؟

المحلول

وأعتقد أن الطريقة الوحيدة للقيام بذلك هي لاستدعاء الدالة Win32 قذيفة <لأ href = "http://msdn.microsoft.com/en-us/library/bb762279(VS.85).aspx" يختلط = "noreferrer نوفولو"> GetProfileType . سوف تحتاج إلى استخدام P / استدعاء لإجراء المكالمة ومن ثم التحقق من قيمة خارج المعلمة pdwFlags لPT_ROAMING (التي لديها قيمة 2).

وأنا لا أرى توقيع نموذج لهذه المهمة على pinvoke.net ولكن مع هذا توقيع بسيط:

BOOL WINAPI GetProfileType(      
    DWORD *pdwFlags
);

وإنشاء واحدة لن يكون من الصعب.

نصائح أخرى

    [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
        }
    }
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top