IISの仮想ディレクトリを確立するためにDelphiを使用することについての多くの例がありますが、それらはすべて、レジストリを作成する方法を使用します。クラスを追加するには、違いは唯一の違いです。コンピューターが有効になる前に、コンピューターを再起動する必要があることです。コードは次のとおりです。
手順tform1.button1click(sender:tobject);
var
regodbc:Tregistry;
RegisterTemp:Tregistry;
syspath:charの配列[0..255]。
始める
regodbc:= tregistry.create; //アクセス
regodbc.rootkey:= hkey_local_machine;
regodbc.openkey( '/system/controlset001/services/w3svc/parameters/virtual roots'、true);
GetSystemDirectory(SysPath、255);
regodbc.valueExists( '/fire')の場合
始める
suimessage1.text:= 'ネイティブWebには、fireという名前の仮想ディレクトリが既にあります。 '+#13#10+'この火災の削除または名前を変更してください。 ';
suimessage1.icontype:= suitop;
suimessage1.buttoncount:= 1;
suimessage1.caption:= 'error';
suimessage1.showmodal = mrokの場合
winexec(pchar(syspath+'/inetsrv/inetmgr.exe')、sw_shownormal);
出口;
終わり
それ以外
始める
RegisterTemp:= tregistry.create; //
RegisterTempを使用してください
始める
rootkey:= hkey_local_machine; // rootキー値をhkey_local_machineに設定します
//見つけた、または作成/system/controlset001/services/w3svc/parameters/virtual roots、IIS構成情報を書き込みます
OpenKey( '/System/Controlset001/Services/W3SVC/Parameters/Virtual Roots'、true)の場合
始める
writestring( '/fire'、 'e:/fire ,, 205');
終わり
else //キー値の作成に失敗します
始める
suimessage1.text:= 'IIS構成が失敗し、このプログラムはまもなく閉じられます。 '+#13#10+'閉じた後、最初にインターネットサービスマネージャーを確認し、エラーをトラブルシューティングするか、このプログラムを実行する前にインストールしてください。 ';
suimessage1.icontype:= suitop;
suimessage1.buttoncount:= 1;
suimessage1.caption:= 'error';
suimessage1.showmodal = mrokの場合
Application.Terminate;
終わり;
CloseKey;
無料;
終わり;
終わり;
regodbc.free;
終わり;
注:Suipack4コントロールのsuimessagedialogコンポーネントは、コードで使用されます。これに興味がある場合は、私に連絡してください。 [email protected] QQ:49055028