Windows system >> Windowsの知識 >  >> Windows Serverシステムのチュートリアル >> Windows Serverチュートリアル >> 深さ説明Win 2003自動アップグレードパッチ機能

深さ説明Win 2003自動アップグレードパッチ機能

  
一部の読者は、バッチWindows自動アップグレードファイルの使用に関する問題を報告しています。一部のパッチパッケージはインストール中にエラーメッセージが表示され、続行できません。
調査の結果、Windowsには主に2種類のパッチがあり、それぞれ異なるパラメータを使用する必要があるため、パラメータが間違っているとインストールされないため、パッチごとに異なるパラメータを使用する必要があります。詳細に分析しましょう。図1に示されているパッチの種類

、同じディレクトリ内のWindows 2003 Serverでのパッチファイルを参照するには、画像から


は明らかに、アイコンの前にパッチファイル名を見ることができる2つがありますタイプ、1つは単純な実行可能ファイルのアイコン、もう1つは圧縮ファイルをマークする実行可能ファイルのアイコンです。属性分析フォーマットから

WindowsServer2003-KB823559-x86-ENU.exeファイルのアイコンは単純な実行可能アイコンです。図2からこのパッチのヘルプ情報を見ることができ、パッチをインストールするのにMicrosoftアップデートプログラムを使用することがわかりました。パッチのバージョン情報は図3から見ることができます。それはSFXCAB.EXEによって作られ、共通の実行可能ファイルアイコンを持つ他のすべてのパッチは同様のプロパティを持っています。


DirectX9-KB819696-x86-ENU.exeファイルのアイコンは、圧縮ファイルをマークする実行ファイルのアイコンで、パッチのヘルプ情報を見ることができます。認識されるパラメータには/Uと/Zは含まれていません。実行に/Uパラメータを使用すると、エラーが発生します。同様に、パッチのバージョン情報を見ると、DirectX9-KB819696-x86-ENUパッチはWEXTRACT.EXEから派生したものであり、フラグ圧縮ファイルを含む実行可能ファイルのアイコンを持つ他のすべてのパッチも同様の特性を持っています。 。

は、Windowsのパッチの二つの異なるタイプがあることが明らかである別のパッチを使用して、パラメータが同じではない必要があります。

は自動的にパッチ形式

区別どのようにバッチファイル内での二つの異なるパッチを区別?最も安全な方法は、パッチファイルのリソース情報を検出するための小さなプログラムを見つけることです - パッチリソースに圧縮ファイルをマークする実行可能ファイルのアイコンが含まれている場合、パッチは2番目のタイプです。アイコンを除いて最初の種類のパッチを除いて、/U /Q /Zパラメータを使ってパッチをインストールできます。

はここだけでWindowsの内部コマンドは、追加の手順を使用して、簡単な方法です。パッチファイルで特徴文字列を見つけます文字列が特定の種類のパッチにのみ存在する場合は、これに基づいてパッチの種類を区別できます。ステップ1:図4に示すように、テキストエディタを使用してウィンドウズサーバ2003− KB823559 − x86 − ENU.exeファイルおよびDirectX9 − KB819696 − x86 − ENU.exeファイルを開くと、多くの特徴的な文字を見つけることができる。文字列 "_SFX_CAB_EXE_PATH"などの文字列はSFXCAB.EXEタイプのパッチにのみ存在し、文字列 "CABINET"および "WEXTRACT"はWEXTRACT.EXEタイプのパッチファイルにのみ存在します。そのため、パッチファイルの種類を判断するために文字列を見つける方法を使用できます。ステップ2:[スタート] - [ファイル名を指定して実行]メニューに「cmd」と入力し、次にパッチがあるフォルダを入力して次のコマンドを実行して、パッチファイルに必要なパラメータ:

(@findstr _SFX_CAB_EXE_PATHパッチファイル名> nul& @echoパラメータ/U /Q /Z)@echoパラメータ/Q

つまり、文字列_SFX_CAB_EXE_PATHが見つかった場合、パッチは/U /Q /Zパラメータを使用し、それ以外の場合は/Qパラメータが使用されます。で
ステップ3:ラン5に結果を示します。 1回限りの簡単な方法最初に判断を特定し、次に結果に従ってパラメータを追加してからバッチ処理を実行する場合は、あまりにも面倒です。これは、パッチの判断とインストールを組み合わせた完全なバッチコマンドです。
FOR /R %% F IN(* .exe)DO @((@ findstr _SFX_CAB_EXE_PATH "%% F"> nul && @start /wait %% F /U /Q /Z)@start /wait %% F /Q)qchain.exe

バッチファイルをパッチディレクトリに配置します。パッチファイルを同じディレクトリにグループ化する必要はありません。forコマンドの/Rパラメータは自動的にすべてのサブディレクトリを検索します。注:2002年12月以降のパッチの場合、基本的にqchainコマンドを使用する必要はありません。新しいパッチにはこのコマンドが組み込まれています。
Copyright © Windowsの知識 All Rights Reserved