- 46 名前:デフォルトの名無しさん mailto:sage [2011/02/11(金) 19:46:23 ]
- 質問させていただきます。
環境はVisualStudio2008EEを使っています。 リソースエディタで作ったエディットボックスに、入力バイト数制限をかけるため、EM_LIMITTEXTを使っています。 コンパイル時の文字セットを「マルチバイト文字セットを利用する」にしている時はうまく動作しました。 しかし事情があって「Unicode文字セットを使用する」でコンパイルする方法に変えました。 結果、入力バイト数ではなく、文字数での制限へと動作が変わってしまいました。 おそらく、CreateWindowWでエディットボックスが作られることとなり、結果文字列がWCHARとして扱われてしまっているのだと思います。 この状態から、コンパイル時の使用文字セットを変えることなく、 うまくマルチバイト扱いでバイト数制限をかける方法はないでしょうか? よろしくお願いいたします。 ・SendMessageAでEM_LIMITTEXTを送ってみる ・SetWindowTextAでマルチバイト文字をセットしてみる と試してみましたが、効果はありませんでした
|

|