The Grimoire of Nonsense

個人的なメモを残すブログ

.dllや.libがエクスポートしている関数を調べる

お馴染みdumpbin先生を使いエクスポートしている関数を調べる方法。

dumpbin /exports (対象ファイル)

を使いエクスポートしている関数を調べることが出来る。
dumpbin先生の凄い所は.libファイルも見れてしまうこと*1

ただし、.libについては/GLオプションが付加してコンパイルしたものに関しては見れないよう*2

P.S.
前にこれのDLLだけバージョンを書いてたっぽい。
もう歳だからしょうがないね……(言い訳)

イベントログと戦う(C#編)

このイベントログに対する執着心と来たら。
一応C#で動くイベントログクリーナを書き直してみた。
僕自身は頑張ったつもりだけど、今度もまた突っ込み所があると思うけど気にしない方向で。
仕様的には、レジストリから収集したイベントログリストを用いて、そのログが有効かどうか調べて、有効なら件数を取得する。
その後、有効かつ0件超過のレコードならイベントログをクリアする……みたいな。
ソースが多いからGitHubにでも上げた方がいいのかなぁ、と考えつつここに上げる。
一部.NETのソースコードを参考にしている部分がありますあります*1
Visual Studio 2015 Community + Windows 8.1 (x64)で作成、動作を確認してます*2

2015/07/31 22:33追記
DllImportの呼び出し規約が間違えていたので修正しました。

以下、明日使えないゴミ駄文。

*1:関数からデータを受け取る時、まずバッファをnullにして必要なバイト数を受け取りもう一度関数を呼ぶ所

*2:ただ、動作を完全に保証するわけではありません

続きを読む

SHA-1とSHA-256で同時に署名する

f:id:sx1752:20150730115824p:plain
こんな風に署名する方法。

まずはSHA-1で署名する

普通に署名します。
(ここでは例でtest.exeに署名することにします)

signtool sign /a /fd SHA1 test.exe


次にSHA-256で署名する

次に/asオプションと/fd SHA256オプションを付けて署名します。

signtool sign /a /as /fd SHA256 test.exe


実行結果

すると次のようになります。
タイムスタンプとかはお好みで。
f:id:sx1752:20150730120730p:plain

簡易ニコ生アラートっぽいものを

作ろうとしてる。なお完成するかどうかは不明の模様。
XMLSocketが何かとか受信方法、WPFの勉強のために……。
更新がてらにコミュIDからコミュ名とオーナーを取得するやつを書いてみましたです……。
HtmlAgilityPackに依存してます。もっといい書き方があるかもと思いつつここに残す。

続きを読む

最近のマイブーム

パスタソースでカルボナーラというものがあるが、あれが結構美味しい。
この年になるまで食べたことなかったが、もっと早くに食べておけばよかったと思う。
ただし作り方は知らない。

Visual Studio 2015で「定義に移動」が出来ない

C#において、タブの設定が「タブを保持」になっていると定義に移動が正しく使えない。
「空白を保持」にすると定義に移動は正しく出来る。
僕もちょっとここで嵌った。
元記事の執筆者さんは50回くらい設定のリセットを行ったそうで、大変にお疲れ様でございます。

追記:
GoToDefinition Fix extensionを使うと解決できるらしい。
あとUpdate 1では修正される模様。


※この記事は以下を参考に執筆させていただきました。qiita.com