タグ

リンカに関するlike_futsalのブックマーク (2)

  • DLL から「正しい」LIB ファイルを作るには

    となっていますから、これを使って sha1 が計算できそうです。 そこで、ntdll.dll とリンクするような LIB ファイルが欲しいわけです。 しかし Bing 先生に訊いてみると、わらわらと不正な方法が出てきます。 というわけでここに正しい方法をメモしておきます。 結論 まず、いろいろ試してみた結果最も楽な方法を述べます。 (以下 Visual Studio 2012 を使うことが前提) 1. akkarin.cpp を用意する extern "C" { void __stdcall A_SHAFinal (int, int){} void __stdcall A_SHAInit (int, int){} void __stdcall A_SHAUpdate(int, int, int){} } // extern "C" このソースは、LIB を生成するためだけのものです。 必要

  • DLLを使おう!!

    DLLプログラミングは、ウィンドウズプログラミングと切っても切れない関係……のはずなのに、結構わかりにくいんですよね。そういう部分をまとめてみました。 「DLL」。この名称は「Dynamic Link Library」の略です。日語に訳すと「動的にリンクするライブラリ」といったところでしょうか<一語しか訳してないやん。 通常アプリケーションを作製する場合、「各ファイルをコンパイルする」-「作製されたオブジェクトファイルをリンクする」という手順(いわゆる「ビルド」と呼ばれるもの)を踏んで「実行ファイル(Exeファイル)」が作製されます。 アプリケーションはいっぺんにすべてが作られるわけではなく、ソースファイル単位でまず「コンパイラ」が「オブジェクトファイル」というものを作り、次に「リンカ」が各オブジェクトファイルをくっつけ、「実行ファイル」にします。 この「ビルド時にリンクする」ことを「静

  • 1