0

コンピューターがプログラムを実行するために必要な次の dll ファイルを自動的に登録する、この種のスクリプトが必要でした。必要な dll を system32 に手動でコピーしても、実際にはその dll が見たとおりに登録されません。そのため、autorun から実行されるスクリプトを使用してこの dll を登録してみます。「windows スクリプト ホスト」の使用については聞いたことがありますが、特に dll ファイルを system32 に登録することに関しては、習得が難しいと感じています。何か提案はありますか?

4

2 に答える 2

1

MSI パッケージを作成することをお勧めします。予想よりも簡単です。

高度なインストーラーを試す: http://www.advancedinstaller.com/download.html

あなたのような単純なプロジェクトには無料で使用できます。

于 2012-02-20T17:29:15.167 に答える
0

あなたの問題を分解しましょう:

1)必要なdllをフォルダ(folderPath =このフォルダへのパス)にコピーし、次の形式の「temp.txt」ファイルにdllファイルのリストがあると仮定します-

xolehlp.dll

xpob2res.dll

xpsp1res.dll

2)dllを1つのフォルダーからsystem32フォルダーにコピーする

3)このdllを登録します

必要なコードは次のとおりです。

Option Explicit 
Dim oFSO, WshShell, oTxtFile, sLine  ,filePath, folderPath
Const ForReading=1


filePath ="C:\Documents and Settings\Amol\Desktop\Temp\FileList.txt"
'' Filepath is your local path to txt file

folderPath = "C:\Documents and Settings\Amol\Desktop\Temp\"
'' folderPath is your path to folder from where you want to copy the dlls

 Set oFSO = CreateObject("Scripting.FileSystemObject") 
 Set WshShell = CreateObject("WScript.Shell")

 Set oTxtFile = oFSO.OpenTextFile(filePath, 1) 


Do Until oTxtFile.AtEndOfStream 

   sLine = oTxtFile.ReadLine
   oFSO.CopyFile folderPath & sLine,"C:\WINDOWS\system32\"
   sLine = "regsvr32 C:\WINDOWS\system32\"&sLine
   WshShell.Run sLine

 Loop 
 oTxtFile.Close
于 2012-02-19T12:46:20.260 に答える