コード例 #1
0
 // [Fact]
 private void DumpProcessorFeatures()
 {
     foreach (ProcessorFeature feature in Enum.GetValues(typeof(ProcessorFeature)))
     {
         Debug.WriteLine($"{feature}: {SystemInformationMethods.IsProcessorFeaturePresent(feature)}");
     }
 }
コード例 #2
0
        public void IsProcessorFeaturePresent()
        {
            // We shouldn't be able to run on the original Pentium, so this should always be false.
            SystemInformationMethods.IsProcessorFeaturePresent(ProcessorFeature.PF_FLOATING_POINT_PRECISION_ERRATA).Should().BeFalse();

            // I don't think any platform doesn't support this
            SystemInformationMethods.IsProcessorFeaturePresent(ProcessorFeature.PF_COMPARE_EXCHANGE_DOUBLE).Should().BeTrue();
        }
コード例 #3
0
        public void ExpandEnvironmentVariables_Long()
        {
            string longValue = new string('a', 100);

            try
            {
                Environment.SetEnvironmentVariable("ExpandEnvironmentVariables_Long", longValue);
                SystemInformationMethods.ExpandEnvironmentVariables(@"%ExpandEnvironmentVariables_Long%").
                Should().Be(longValue);
            }
            finally
            {
                Environment.SetEnvironmentVariable("ExpandEnvironmentVariables_Long", null);
            }
        }
コード例 #4
0
 // [Fact]
 private void DumpComputerNameFormats()
 {
     foreach (COMPUTER_NAME_FORMAT format in Enum.GetValues(typeof(COMPUTER_NAME_FORMAT)))
     {
         try
         {
             string name = SystemInformationMethods.GetComputerName(format) ?? "<null>";
             Debug.WriteLine($"{format}: '{name}'");
         }
         catch (Exception e)
         {
             Debug.WriteLine($"{format}: FAILED- {e.Message}");
         }
     }
 }
コード例 #5
0
        public void GetTokenPrimaryGroupSid_ForCurrentProcess()
        {
            SID sid;

            using (var token = AuthorizationMethods.OpenProcessToken(AccessTokenRights.Read))
            {
                token.IsInvalid.Should().BeFalse();
                sid = AuthorizationMethods.GetTokenPrimaryGroupSid(token);
            }
            AuthorizationMethods.IsValidSid(ref sid).Should().BeTrue();

            AccountSidInformation info = AuthorizationMethods.LookupAccountSidLocal(sid);

            info.Name.Should().Be(SystemInformationMethods.GetUserName());
        }
コード例 #6
0
 public void GetSidForCreatedFile()
 {
     using (var cleaner = new TestFileCleaner())
     {
         using (var handle = FileMethods.CreateFile(cleaner.GetTestPath(), CreationDisposition.CreateNew))
         {
             handle.IsInvalid.Should().BeFalse();
             FileMethods.QueryOwner(handle, out SID sid);
             sid.IdentifierAuthority.Should().Be(SID_IDENTIFIER_AUTHORITY.NT);
             AccountSidInformation info = AuthorizationMethods.LookupAccountSidLocal(sid);
             info.Usage.Should().Be(SidNameUse.User);
             info.Name.Should().Be(SystemInformationMethods.GetUserName());
         }
     }
 }
コード例 #7
0
 public void ExpandEnvironmentVariables_Existing()
 {
     SystemInformationMethods.ExpandEnvironmentVariables(@"%COMPUTERNAME%").
     Should().Be(Environment.GetEnvironmentVariable("COMPUTERNAME"));
 }
コード例 #8
0
 public void GetComputerName_NetBIOS()
 {
     SystemInformationMethods.GetComputerName(COMPUTER_NAME_FORMAT.ComputerNameNetBIOS)
     .Should().Be(SystemInformationMethods.GetComputerName());
 }
コード例 #9
0
 public void GetUserNameDisplay()
 {
     SystemInformationMethods.GetUserName(EXTENDED_NAME_FORMAT.NameDisplay).Should().NotBeNullOrWhiteSpace();
 }
コード例 #10
0
 public void GetUserNameSam()
 {
     // Should be DOMAIN\user or COMPUTER\user
     SystemInformationMethods.GetUserName(EXTENDED_NAME_FORMAT.NameSamCompatible)
     .Should().Be($"{Environment.GetEnvironmentVariable("USERDOMAIN")}\\{Environment.GetEnvironmentVariable("USERNAME")}");
 }
コード例 #11
0
 public void GetSuiteMask()
 {
     SystemInformationMethods.GetSuiteMask().Should().HaveFlag(SuiteMask.VER_SUITE_SINGLEUSERTS);
 }
コード例 #12
0
 public void GetCurrentUserName()
 {
     SystemInformationMethods.GetUserName().Should().Be(Environment.GetEnvironmentVariable("USERNAME"));
 }
コード例 #13
0
 public void GetComputerName()
 {
     SystemInformationMethods.GetComputerName().Should().Be(Environment.GetEnvironmentVariable("COMPUTERNAME"));
 }
コード例 #14
0
 public void CeipIsOptedIn()
 {
     // Can't really validate this, just make sure it doesn't blow up.
     SystemInformationMethods.CeipIsOptedIn();
 }
コード例 #15
0
ファイル: Windows.cs プロジェクト: maryamariyan/WInterop
 public static SYSTEMTIME GetLocalTime() => SystemInformationMethods.GetLocalTime();