Windows API Code Pack の TaskDialogでアイコンが出ないバグの治し方

Window API Code Pack 1.1 では何故かTaskDialogでアイコンが表示されません。

色々調べていたところ改善方法を発見したのでブログに残しておきたいと思います。

まず改善前の状態。

改善前

TaskDialogのサンプルソースを実行、IconでWarningを指定したにもかかわらず、アイコンは表示されていません。

ソースコードの書き換え

WindowsAPICodePackのソリューション(WindowsAPICodePack.sln)をVisualStudioで開きます。(Expressエディションの場合はC#で開きます)

TaskDialogNativeMethodsソリューションエクスプローラ―で、Core -> Interop -> TaskDialogs -> TaskDialogNativeMethods.cs を開きます。

 

次に、Ctrl+G で 74 と入力し、74行目に移動します。


internal IconUnion(int i)
{
mainIcon = i;
spacer = IntPtr.Zero;
}

この74行目付近の部分を、


internal IconUnion(int i)
{
spacer = IntPtr.Zero;
mainIcon = i;
}

に変更(上下入れ替え)し、リビルドします。

尚、VisualStudio2010以降でビルドする場合は、”ShellExtensions”以外のプロジェクトの対象フレームワークを”.NET Framework 3.5″に変更してください。(そうしないとエラーでビルドできません)
.NET Framework 4.0 以降でビルドする場合は、参照設定に System.Xaml を追加してください

次に先ほどのTaskDialogのソースコードをもう一度ビルドするとダイアログでちゃんとアイコンが表示されるようになると思います。

TaskDialogDemo

急いで執筆したので間違いがあればご指摘ください。以上です。

iOS7、iPhone4sでWiFiに接続できなくなる問題

iPhoneでネットを閲覧していたところ、突然WiFiに接続できなくなりました。その後少しの間は接続できましたが少ししたらすぐに切断されてしまう…。

特に回線速度測定などの回線への負荷が高い(?)作業をすると切断されてしまうようです。

検索してみると4sで特に多い症状みたいで、再起動やネットワーク設定のリセットをしたりすると直る事もあるみたいですが僕の場合はダメでした。

色々弄ってたらWiFiのON/OFFがグレーアウトしてしまう始末。(←これはネットワーク設定のリセットで直りました)

残るはバックアップからの復元

これがダメなら買替えや交換しかないかもしれません。

滅多にバックアップなんて取りませんが幸いなことに1日前(WiFiに接続できていた)にバックアップを作成していたのでそれで何とか復元できました。

 

“iPhoneを探す”に注意

iTunes - iPhoneを探す

iCloudの設定で”iPhoneを探す”をオンにしていた場合、iTunesの”バックアップを復元”が使用できません。

僕は一旦”iPhoneを復元“(初期化)してから”iTunesからバックアップを復元“という方法でできました。

 

とりあえず復活しました

現在は何の問題もなく動いていますが、もしかしたらどこかWiFi周りチップに不具合が生じていたのかもしれません。

また何か不具合が出た場合は記録していきたいと思います。

それでは(´∀`*)ノシ バイバイ

 

追記:本記事投稿約2分後再発

なんか繋がったり繋がらなかったり…。

AviUtlの導入方法

aviutl今回はAviUtlという、無料ながらも高度な編集が可能な動画編集ソフトの導入方法を紹介したいと思います。

この導入手順が面倒でやめたという人も中にはいるのではないのでしょうか?

今回はその面倒な作業を少しでも簡単に説明していきたいと思います。

(さらに…)