2010-12-01から1ヶ月間の記事一覧

Open Tools API その2:メニューの差し替えとノーティファイアインターフェース

IDEのメニューを差し替えるには、IDEそのもののサービスであるINTAServicesのMainMenuプロパティを取得する。 これはTMainMenu型なので、通常のメニューにアクセスのと全く変わりなし。 procedure TFilterWizard.DataModuleCreate(Sender: TObject); var i: …

PrintScreenキーを無効にしてスクリーンショットを無効化する

セキュリティ的に絶対的な効果はないけど、アプリケーションの実行中にPrintScreenキーを無効にしてスクリーンショットを撮れなくするのはそれなりの抑止力があるはず。キーストロークをWindowsに登録するホットキーはフックよりも実装が楽。元ネタは、ここ…

コードフォーマッタープラグイン for RAD Studio XEを作ってみた

RAD Studio XEに実装されたコードフォーマッターがC/C++の細かいところまでフォローしてくれないので、メジャーなコードフォーマッターであるUncrustifyをRAD Studio XEのコードエディタに適用するプラグインを作ってみました。バイナリ(UncrustifyRS.bpl)…

Universal Character Set Detector C LibraryをC++Builder XEから使用する

Mozillaのエンコーディング自動判別ライブラリである「universalchardet」をDLL化したのをC++Builderで動作させてみました。C++Builderでの修正箇所はprmem.hの「#include 」を「#include 」にするだけ。アーカイブはhttp://a7m.sakura.ne.jp/SOURCE/univers…

RadPHPでエンコーディングがBOM無しUTF-8であるソースコードがANSIと見なされる場合の回避策

RadPHPを使ってみて、ちょっと気になった点がありQCに登録したら、早速回答が来たので覚え書きとして記録。こんな感じのソースファイルを作成して、エンコーディングをUTF-8としてBOM無しで保存。 '; print '<BODY>'; print 'これはPHPのソースコードで、エンコー</body>…