インストール中にポート、たとえば 9000 をチェックし、ユーザーにポートの状態を知らせるように、セットアップ ファイルを作成しようとしています。私は Inno Setup を初めて使用しますが、これが可能かどうか疑問に思っています。これを確認するにはどうすればよいですか?
ありがとうございました
インストール中にポート、たとえば 9000 をチェックし、ユーザーにポートの状態を知らせるように、セットアップ ファイルを作成しようとしています。私は Inno Setup を初めて使用しますが、これが可能かどうか疑問に思っています。これを確認するにはどうすればよいですか?
ありがとうございました
私の機能を使用して、ポートが利用可能であることを確認できます
見る :
function CheckPortOccupied(Port:String):Boolean;
var
ResultCode: Integer;
begin
Exec(ExpandConstant('{cmd}'), '/C netstat -na | findstr'+' /C:":'+Port+' "', '',0,ewWaitUntilTerminated, ResultCode);
if ResultCode <> 1 then
begin
Log('this port('+Port+') is occupied');
Result := True;
end else
begin
Result := False;
end;
end;
ポートが使用可能かどうかを確認する唯一の実際の方法は、ポートを接続またはリッスンすることです(チェックしている可用性の種類によって異なります)。
これはWinAPI呼び出しで直接行うことができますが、選択した言語を使用してDLLへのポートをテストするコードを記述して(もちろんネイティブDLLを作成できる場合)、これを呼び出す方が簡単な場合があります。伊野の中から。
Windows 2000、XP バージョンでは telnet コマンドを使用できます。Windows 7、Vista の場合、Telnet はデフォルトで有効になっていません。ユーザーはコントロール パネルから有効にするか、pkgmgr /iu:"TelnetClient"
コマンド ラインから有効にすることができます。inno から Windows のバージョンを確認し、それに応じてコマンドを実行できます。