C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[1]: LCID


(過去ログ 99 を表示中)

[トピック内 2 記事 (1 - 2 表示)]  << 0 >>

■59453 / inTopicNo.1)  LCID
  
□投稿者/ asuka (39回)-(2011/05/26(Thu) 13:44:06)

分類:[.NET 全般] 

いつもお世話になっております。

C#にてLCMapString()APIを使用したいと考えています。
下記サイトを参考にAPIを呼ぶための関数を作成しました。
http://d.hatena.ne.jp/deraw/20060831/1156992224
http://d.hatena.ne.jp/hilapon/20100916/1284623378

public static string MapString( MapFlags mapFlags, string source)
{
 char[] buffer = new char[source.Length * 2];
 int len = LCMapString(Thread.CurrentThread.CurrentCulture.LCID,
       (uint)mapFlags,
       source,
       source.Length,
       buffer,
       buffer.Length);
 if (len < 0)
{
 throw new ArgumentException("\"LCMAP_SORTKEY\" is not support ");
}

return new String(buffer, 0, len);
}

問題はLCMapString()APIの第一引数です。

LCIDがメンバにいないとコンパイラに怒られます。
→実際にいません。
→また、Thread.CurrentThread.CurrentCultureと型を指定しているのにエラーではSystem.Globalization.CultureInfoにLCIDの定義がないと怒られます。

.NetFramework2.0から登場したクラスみたいですが、下記URLに4.0でもサポートしている旨が記載されています。
http://msdn.microsoft.com/ja-jp/library/system.globalization.cultureinfo.lcid.aspx

どなたか原因、あるいは代わりの方法があればご教授願います。

---
VS2010 .NetFramework4.0 Windows7 x64 SP1






引用返信 編集キー/
■59455 / inTopicNo.2)  Re[1]: LCID
□投稿者/ asuka (40回)-(2011/05/26(Thu) 14:04:27)
嘘をつきました、すみません。

Silverlight4で作成していました。

.NetFramework4.0を使用してアプリを作成したとことメンバがおりました。

お騒がせ致しました。



ちなみにですが、本来はSilverlight側から実行させたいと思っております。

LCIDの部分は、アプリ側でGetUserDefaultLCID()を使用してうまくいくことを確認しましたので、

これで対応したいと思います。

解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -