DLLファイルに基づくシリアルチェック関数の作成を手伝ってもらえますか? 残念ながら、Function Prototype はありません。
私が持っているのは、関数の NSIS バージョンです。
SetOutPath $PLUGINSDIR
File "serialtest.dll"
System::Call "serialtest::_sn_serialtest(t r1) i .r2 ?u"
${If} $2 == 0
Messagebox MB_OK|MB_ICONSTOP \
"Invalid Serial Number!"
Abort
${Endif}
t
- テキスト、文字列 (LPCSTR、最初の文字へのポインター)
r1-r9
- これらは、NSIS の場合は $1 から $9 です (入力または出力の場合があります)。この場合、r1 は $1 で、$1 はデリミタ「-」付きのシリアル番号です。
i
- int (char、byte、short、ハンドル、ポインタなどを含む)
.
- 入力がないことを意味します
u
- DLL をアンロード
追加情報: NSIS スクリプトは ANSI で書かれており、Inno Setup の Unicode バージョンを使用しています。
可能であれば、シリアル番号は編集ボックスからインポートする必要があります - ここでカスタム シリアル ページに関する質問をしました: Inno Setup のシリアル番号の CustomPage