none
ActiveDirectoryとUTF-8コードについて RRS feed

  • 質問

  • ADSIを利用したアプリケーションを開発しています。

    このたび、Unicode対応ということで、使用する文字データをすべて

    UTF-8化することとなったのですが、ActiveDirectoryとのやりとりに

    UTF-8形式を利用する方法がわからなくて困っています。

    皆さんのお知恵を拝借させてください。

     

    2007年5月2日 7:39

すべての返信

  • Unicode対応でUTF-8化するという時点で、少しおかしいですよ。(通常UTF-16化を指すでしょう。)

     

    とりあえず現状のコードを見せてください。

    2007年5月2日 8:06
  • 早速のお返事ありがとうございました。

     

    各種サイトなどで調べてみると、ご指摘のとおり一般にVC++でのプログラミングでUnicode化というと

    UTF-16形式を利用した方法が紹介されていました。

    今回の開発では、UTF-8形式で保存されたファイルやDBを利用するため、ActiveDirectoryにもUTF-8

    形式でエンコードした情報を格納したいと考えているのですが、そもそもActiveDirectoryにUTF-8形式の

    情報を格納したり、UTF-8形式でエンコードされている情報を取得したりする方法がわからないため、

    質問させていただいた次第です。

    具体的なコードをお見せできないため、こういうやり方があるといった観点でアドバイスをいただければ

    幸いです。

     

    よろしくお願いします。

     

     

     

    2007年5月7日 11:31
  •  Kohei さんからの引用

    今回の開発では、UTF-8形式で保存されたファイルやDBを利用するため、ActiveDirectoryにもUTF-8

    形式でエンコードした情報を格納したいと考えているのですが、そもそもActiveDirectoryにUTF-8形式の

    情報を格納したり、UTF-8形式でエンコードされている情報を取得したりする方法がわからないため、

    質問させていただいた次第です。 

     

    AD を扱う API (ADSI等) で UTF-8 を受け付けるものなんてありませんよ。以上。

    2007年5月7日 13:36
  • 回答ありがとうございます。

     

    2点質問させていただきたいと思います。

     

    1点目

    UTF-8形式でエンコードされた情報を格納するためには、ActiveDirectory自体に

    何か特別な設定が必要なのでしょうか?(インストール時・後の設定や動作OSの種類・設定など)

     

    2点目

     ちゃっぴ さんからの引用

    AD を扱う API (ADSI等) で UTF-8 を受け付けるものなんてありませんよ。以上。

     

    と回答いただきましたが、「受け付けるものがない」というのは、

    APIのインタフェイスとしてUTF-8を利用できないという意味でしょうか?

    (対象のプログラムではADSIを利用しています。)

    現状の文字コードはS-JISとなっており、それをUTF-8に変更する予定なのですが

    S-JISとUTF-8が、同じマルチバイト文字であってもUTF-8は

    利用不可なのはなぜでしょうか?

     

    以上、よろしくご教授願います。

    2007年5月9日 4:09
  • ポイントしときます。

    http://forums.microsoft.com/MSDN-JA/ShowPost.aspx?PostID=1577111&SiteID=7

     

     

    1点目

    UTF-16に変換する必要があります。

    UTF-8は保存できません。

     

    2点目

    >APIのインタフェイスとしてUTF-8を利用できないという意味でしょうか?

    Yes

     

     

    2007年5月12日 1:29