プログラミング

プログラミング

_penter,_pexitによるフック有効化について

一部では割と有名なこの機能について実際に触ってみました。VisualStudioのリンカーオプションで、/Gh,/GH で有効にできます。このフラグをONにすると、全関数のIN/OUTで _penter, _pexit という関数がそれぞれコールするようになります。 そしてこの関数については以下のプロトタイプ宣言を持ちます。 void __declspec(...
プログラミング

開発者向けエクスプローラーのサムネイル拡張DLL

作業を続けていたエクスプローラーのサムネイル拡張DLLをバージョンアップ公開します。 現在の対応拡張子(ファイルフォーマット) DDS PSD PVR TGA 前回から変わったところは、内部データの保持方法が変わったことで、RGBA(RGBX)の要素を持つデータの解釈が強力になりました。従来うまく表示できなかったRGBX5551やARGB1555にも対応でき...
DirectX

DDSのRGB 10bitフォーマットの罠

今更といえば今更な話なのですが、あまり情報がないようにみえたのでここにメモしておきます。DDSフォーマットの A2R10G10B10 や A2B10G10R10 の並びの画像データについて罠というか、マイクロソフトも承知のバグが潜んでいました。具体的には、チャンネルのマスクビットが逆転しています・・・。
プログラミング

SDKなしでOpenCLを使ってみる -おまけ-

今回はOpenCLを使ってみる一連の流れで気付いたことを書いてみます。おまけです。
プログラミング

OpenCLのデバッガ(CodeXL)でトラブルに見舞われる

OpenCLのコード書きはおおよそわかってきたので、デバッガについて調べてみようと思います。やはり開発となるとデバッガは必要になってくると思いますし、AMDではCodeXLというツールがあるのでこれを試してみようと思います(ました)。 しかし!、このインストールして確認でとてもトラブルに巻き込まれてしまいました。結局OpenCLのデバッガに関しては検証できず...
プログラミング

SDKなしでOpenCLを使ってみる -導入編2-

前回はSDKなしの状態で、OpenCLの関数を実行して、OpenCL実行の際のデバイスの情報を取得する部分まで行いました。今回はOpenCLのコンテキストを生成して配列の加算くらいをやってみたいと思います。
プログラミング

SDKなしでOpenCLを使ってみる -導入編-

OpenCLを使ったアプリケーションを作成する際には、とりあえずは何らかのSDKをインストールして使うというのが普通のようです。導入に関して検索してみるとだいたい下記の手順が紹介されていたりします。 Intel SDK fo OpenCL NVIDIA OpenCL SDK Accelerated Parallel Processing (APP) SDK ...
プログラミング

Windows Shell extension(サムネイル用)のデバッグのメモ

シェルエクステンションとして、IThumbnailProviderを実装して、いざデバッグしようとすると意外と大変なことがわかりました。日本語としての情報があまり見かけなかったので、これについて今回は情報を残しておきたいと思います。
プログラミング

最近のVisualStudio Cランタイムバージョン

最近のVisualStudio環境でサイドバイサイド関連を調べていたのにもかかわらず、バージョンのチェックを忘れていたような感じだったので調べてみました。2010以降はバージョン情報を昔ほど気にしなくても良くなっていたのでつい忘れていた・・・と思います。
プログラミング

エクスプローラサムネイル画像のシェル拡張を作成中です (4)

今まで作成していたエクスプローラーサムネイル拡張をひとまず公開してみます。 簡単なインストーラーバッチは付けていますが、アンインストールは手動です。 前回と比べて出来るようになったことは、psd画像に対応したことです。あとは若干動作が安定するようになりました。まだまだ表示できない形式があるので、徐々に対応していく予定です。 現在の対応拡張子 DDS PSD ...