次の方法で共有


大きい整数のプロパティ型

lastLogon などの Active Directory ドメイン サービス スキーマ プロパティは、LargeInteger 構文型を使用します。lastLogon プロパティまたは LargeInteger 構文型の詳細については、MSDN ライブラリ (https://go.microsoft.com/fwlink/?LinkID=27252) で lastLogon または LargeInteger に関するページを参照してください。

この型のプロパティが Properties プロパティで取得される場合、このデータ型は IADsLargeInteger にキャストできる COM オブジェクトとして表されます。IADsLargeInteger 型の詳細については、MSDN ライブラリ (https://go.microsoft.com/fwlink/?LinkID=27252) で IADsLargeInteger に関するページを参照してください。

この型のプロパティが ResultPropertyValueCollection から取得される場合、このデータ型は Int64 構造体として表されます。

次の例は、IADsLargeInteger 型から DateTime 型に変換する方法を示しています。

public static DateTime GetDateTimeFromLargeInteger(IADsLargeInteger largeIntValue)
{
    //
    // Convert large integer to int64 value
    //
    long int64Value = (long)((uint)largeIntValue.LowPart +
             (((long)largeIntValue.HighPart) << 32 ));  

    //
    // Return the DateTime in utc
    //
    return DateTime.FromFileTimeUtc(int64Value);
}

次の例は、DateTime 形式から IADsLargeInteger に変換する方法を示しています。

public static IADsLargeInteger GetLargeIntegerFromDateTime(DateTime dateTimeValue)
{
    //
    // Convert DateTime value to utc file time
    //
    Int64 int64Value = dateTimeValue.ToFileTimeUtc();

    //
    // convert to large integer
    //
    IADsLargeInteger largeIntValue = 
         IADsLargeInteger) new LargeInteger();
    largeIntValue.HighPart = (int) (int64Value >> 32);
    largeIntValue.LowPart = (int) (int64Value & 0xFFFFFFFF);

    return largeIntValue;
}

関連項目

リファレンス

System.DirectoryServices
DirectoryEntry
ResultPropertyValueCollection

概念

プロパティの型

Send comments about this topic to Microsoft.

Copyright © 2007 by Microsoft Corporation. All rights reserved.