紹介と関連情報:
ユーザーが会社名を入力する編集コントロールがあります。編集コントロールはロケール対応です。
問題:
SQL injection
攻撃やユーザーによる無意味な文字入力から適切に保護したいと考えています。
問題を解決するための私の努力:
を破棄しcolon、semicolonに対応してサブクラス化手順で、 に対応しWM_CHAR
て検証を再度実行することを考えていましたEN_CHANGE
。問題が発生した場合は、ユーザーに通知し、[保存] ボタンを無効にします。
私のアプリケーションはロケール対応なので、入力文字をテストするためにロケール対応関数が必要です。
これまでのところ、ロケールを認識しているように見えるものを見つけましIsCharAlpha
たIsCharAlphaNumeric
(私の英語は最高ではないため、MSDNのドキュメントを読み間違えた可能性があります。申し訳ありません)。
ここでも同様の質問を検索しましたが、何も見つかりませんでした。
質問:
捨てるsemicolonだけでうまくいくのでしょうか、それとも他のキャラクターを考慮する必要がありますか?
サブクラス化 + で「正しい軌道」に乗っていEN_CHANGE
ますか、それともこれを達成するためのより良い方法はありますか? もしあれば、私を正しい方向に向けることができますか?
ありがとうございました。
よろしくお願いします。