Làm th? nào đ? khôi ph?c t?p tin b? nh? cache Windows cài đ?t chuyên bi?t m?t tích và gi?i quy?t v?n đ? x?y ra trong m?t C?p Nh?t SQL Server

D?ch tiêu đ? D?ch tiêu đ?
ID c?a bài: 969052 - Xem s?n ph?m mà bài này áp d?ng vào.
Bung t?t c? | Thu g?n t?t c?

? Trang này

Tri?u ch?ng


Quá tr?nh đư?c mô t? trong bài vi?t này là đ? cung c?p c?u tr? kh?n c?p và không v?nh vi?n s?a ch?a. Khách hàng s? d?ng quá tr?nh này kh?n c?p c?n xác nh?n c?a Windows cài đ?t chuyên bi?t b? nh? Cache b?ng cách s? d?ng Windows cài đ?t chuyên bi?t b? nh? Cache Verifier gói theo ch? d?n trong bài KB 2667628.

Khi b?n c? g?ng cài đ?t chuyên bi?t m?t gói b?n ghi d?ch v? Microsoft SQL Server ho?c m?t C?p Nh?t tích l?y, b?n có th? g?p ph?i các báo l?i sau đây có th? ch? ra v?n đ? Windows cài đ?t chuyên bi?t b? nh? Cache. B? nh? Cache cài đ?t chuyên bi?t Windows, n?m trong m?c tin thư thoại c:\windows\installer , lưu tr? quan tr?ng t?p tin cho các ?ng d?ng đư?c cài đ?t chuyên bi?t b?ng cách s? d?ng công ngh? r Windows Installevà không c?n xóa. N?u b? nh? cache c?a tr?nh cài đ?t chuyên bi?t đ? b? xâm ph?m, b?n có th? không ph?i ngay l?p t?c xem v?n đ? cho đ?n khi b?n th?c hi?n m?t hành đ?ng như g? b? cài đ?t chuyên bi?t, s?a ch?a, ho?c C?p Nh?t SQL Server.

Khi cài đ?t chuyên bi?t SQL Server cài đ?t chuyên bi?t c?a s? mua s?m quan tr?ng t?p tin đư?c lưu tr? trong b? nh? Cache cài đ?t chuyên bi?t Windows (m?c đ?nh là C:\Windows\Installer). Nh?ng t?p tin này đư?c yêu c?u cho g? b? cài đ?t chuyên bi?t và c?p nh?t ?ng d?ng. Thi?u t?p tin không th? đư?c sao chép gi?a máy k? t? khi h? là duy nh?t.

Microsoft khuy?n cáo r?ng cho vi?c cài đ?t chuyên bi?t SQL Server b?n l?n đ?u tiên dùng tr?nh s?a ch?a lưu ? trong nh?ng bài vi?t này đ? xác minh cài đ?t chuyên bi?t hi?n t?i c?a b?n:
Lưu ? Các thông báo l?i sau đây có th? đư?c t?m th?y như tin nhắn văn bản trong trư?ng h?p kí nh?p ho?c thi?t l?p các b?n ghi mà đư?c đ?t t?i m?t trong các m?c tin thư thoại sau đây và ch? ra r?ng b?n nên s?a ch?a c?a b?n th? hi?n b? ?nh hư?ng đang ti?n hành thêm:
  • Cho SQL Server 2008 và SQL Server 2008 R2:
    C:\Program Files\Microsoft SQL Server\100\Setup Bootstrap
  • Cho SQL Server 2012:
    C:\Program Files\Microsoft SQL Server\110\Setup Bootstrap

Cho SQL 2005 (chi nhánh)
Thu g?n b?ng nàyBung r?ng b?ng này
Phiên b?n s?n ph?mThông báo l?i khi cài đ?t chuyên bi?t gói (MSI) là m?t tíchThông báo l?i khi cài đ?t chuyên bi?t b? nh? Cache gói (MSP) là m?t tích
SQL Server 2005
1636 Không th? cài đ?t chuyên bi?t Windows cài đ?t chuyên bi?t MSI t?p tin
1636 Không th? đ? cài đ?t chuyên bi?t t?p tin Windows Installer MSP
Lưu ?B?n ph?i xem l?i các t?p tin log thi?t l?p đ? xác đ?nh xem b?t k? t?p tin b? nh? cache là m?t tích. Đ? bi?t thêm chi ti?t v? làm th? nào đ? th?c hi?n vi?c này, h?y vào ph?n "Gi?i pháp".

Cho SQL Server 2008 SP1
Thu g?n b?ng nàyBung r?ng b?ng này
Phiên b?n s?n ph?mThông báo l?i khi cài đ?t chuyên bi?t gói (MSI) là m?t tíchThông báo l?i khi cài đ?t chuyên bi?t b? nh? Cache gói (MSP) là m?t tích
SQL Server 2008 SP1Không có thông báo l?i
Tiêu đ?: SQL Server thi?t l?p th?t b?i.
------------------------------
Thi?t l?p máy ch? SQL đ? b?t g?p l?i sau: không th? m? đư?c t?p tin vá l?i. T?p tin: c:\WINNT\Installer\1cf506f.msp. L?i m? 0x84B20001.
------------------------------
Cho SQL Server 2008 SP3 CTP ch? xây d?ng (CU/GDR chi nhánh đư?c không áp d?ng)
Thu g?n b?ng nàyBung r?ng b?ng này
Phiên b?n s?n ph?mThông báo l?i khi cài đ?t chuyên bi?t gói (MSI) là m?t tíchThông báo l?i khi cài đ?t chuyên bi?t b? nh? Cache gói (MSP) là m?t tích
SQL Server 2008 SP3 CTP
Lưu tr? MSI file 'C:\Windows\Installer\2775c8.msi' là m?t tích. T?p tin ban đ?u c?a nó là 'sql_engine_core_inst.msi' và nó đ? đư?c cài đ?t chuyên bi?t cho các s?n ph?m 'd?ch Microsoft SQL Server 2008 b? máy cơ s? d? li?u đ?ng cơ v? t?'<network path="">', phiên b?n '10.3.5500.0', ngôn ng? 'ENU'.</network>
T?p tin cache vá l?i "C:\Windows\Installer\19b19196.msp" là m?t tích. Các t?p tin ban đ?u cho t?p tin lưu tr? này là "sql_engine_core_inst.msp", mà có th? đư?c cài đ?t chuyên bi?t t? phiên b?n "Service Pack 3 cho SQL Server 2008 (KB2546951) (64-bit)", 10.3.5500.0
Lưu ? B?n nh?n đư?c thông báo l?i sau khi b?n th?c hi?n m?t nâng c?p:
Thu g?n h?nh ?nh nàyBung r?ng h?nh ?nh này
SQL Server error


Cho SQL Server 2008 R2 SP1 ch? (chi nhánh CU/Đông Đ?c đư?c không áp d?ng)
Thu g?n b?ng nàyBung r?ng b?ng này
Phiên b?n s?n ph?mThông báo l?i khi cài đ?t chuyên bi?t gói (MSI) là m?t tíchThông báo l?i khi cài đ?t chuyên bi?t b? nh? Cache gói (MSP) là m?t tích
SQL Server 2008 R2 SP1
Tiêu đ?: SQL Server thi?t l?p th?t b?i.
------------------------------
Thi?t l?p máy ch? SQL đ? b?t g?p l?i sau: C:\Windows\Installer\932b909.msi.
------------------------------
T?p tin cache vá l?i "C:\Windows\Installer\105441.msp" là m?t tích. Các t?p tin ban đ?u cho t?p tin lưu tr? này là "sql_engine_core_inst_loc.msp", mà có th? đư?c cài đ?t chuyên bi?t t? "Gói b?n ghi d?ch v? 1 cho SQL Server 2008 R2 (KB2528583) (64-bit)", phiên b?n 10.51.2500.0.
Lưu ? B?n nh?n đư?c thông báo l?i sau khi b?n th?c hi?n m?t nâng c?p:
Thu g?n h?nh ?nh nàyBung r?ng h?nh ?nh này
SQL Server error


Dành cho SQL Server 2008 R2 SP2
Thu g?n b?ng nàyBung r?ng b?ng này
Phiên b?n s?n ph?mThông báo l?i khi cài đ?t chuyên bi?t gói (MSI) là m?t tíchThông báo l?i khi cài đ?t chuyên bi?t b? nh? Cache gói (MSP) là m?t tích
SQL Server 2008 R2 SP1
Lưu tr? MSI file 'C:\Windows\Installer\932b909.msi' là m?t tích. T?p tin ban đ?u c?a nó là 'sql_engine_core_inst.msi' và nó đ? đư?c cài đ?t chuyên bi?t cho các s?n ph?m 'd?ch SQL Server 2008 R2 SP1 b? máy cơ s? d? li?u đ?ng cơ v? t?'<network path="">', phiên b?n '10.51.2500.0', ngôn ng? 'ENU'.</network>
T?p tin cache vá l?i "C:\Windows\Installer\105441.msp" là m?t tích. Các t?p tin ban đ?u cho t?p tin lưu tr? này là "sql_engine_core_inst_loc.msp", mà có th? đư?c cài đ?t chuyên bi?t t? "Gói b?n ghi d?ch v? 1 cho SQL Server 2008 R2 (KB2528583) (64-bit)", phiên b?n 10.51.2500.0.
Lưu ? B?n nh?n đư?c thông báo l?i sau khi b?n th?c hi?n m?t nâng c?p:
Thu g?n h?nh ?nh nàyBung r?ng h?nh ?nh này
SQL Server error


Cho SQL Server 2012 trư?c khi CU2
Có là không có thông báo cho thi?u MSP ho?c MSI t?p tin. Tuy nhiên, m? l?i 1714 đư?c ghi nh?t k? cài đ?t chuyên bi?t.

Trong Summary.txt file:
Thành ph?n tên: SQL Server thi?t l?p t?p tin h? tr?
Thành ph?n m? l?i: 1714

Trong Detail.txt file:
<Date><Time>SLP: Sco: File 'd:\2d5feb4dd893c4adee47f15661ac\1033_ENU_LP\x64\setup\sqlsupport_msi\x64\SqlSupport.msi' không t?n t?i
<Date><Time>SLP: Sco: File 'd:\2d5feb4dd893c4adee47f15661ac\1033_ENU_LP\x64\setup\sqlsupport_msi\x64\SqlSupport.msi' không t?n t?i
<Date><Time>SLP: Tr?m ki?m soát: PREINSTALL_SQLSUPPORT_CPU64_ACTION
<Date><Time>SLP: Sco: c? g?ng đ? t?o khóa s? ki?m nh?p cơ s? HKEY_LOCAL_MACHINE, máy<Server name="">
<Date><Time>SLP: Sco: c? g?ng đ? m? khoá con ki?m nh?p Software\Microsoft\Windows\CurrentVersion\Installer
<Date><Time>SLP: Sco: c? g?ng đ? có đư?c giá tr? ki?m nh?p InstallerLocation
<Date><Time>SLP: Windows cài đ?t chuyên bi?t phiên b?n: 5.0.7601.17514
<Date><Time>SLP: Sco: ch? đ?i cho b?n ghi d?ch v? 'msiserver' đ? ch?p nh?n yêu c?u d?ng.
<Date><Time>SLP: Sco: c? g?ng đ? m? qu?n l? SC
<Date><Time>SLP: Sco: c? g?ng đ? m? b?n ghi d?ch v? x? l? cho b?n ghi d?ch v? msiserver
<Date><Time>SLP: G?i QueryServiceStatus Win32 API
<Date><Time>SLP: Sco: c? g?ng đ? đóng b?n ghi d?ch v? x? l? cho b?n ghi d?ch v? msiserver
<Date><Time>SLP: Sco: c? g?ng đ? đóng SC Manager
<Date><Time>SLP: M?c tiêu gói: "d:\2d5feb4dd893c4adee47f15661ac\1033_ENU_LP\x64\setup\sqlsupport_msi\SqlSupport.msi"
<Date><Time>SLP: MSI l?i: 1714 Phiên b?n c? c?a Microsoft SQL Server 2012 thi?t l?p (ti?ng Anh) không th? đư?c g? b?. Liên h? v?i nhóm h? tr? k? thu?t c?a b?n.
<Date><Time>SLP: InstallPackage: MsiInstallProduct tr? l?i k?t qu? m? 1603.
<Date><Time>SLP: B?ng cách s? d?ng m? l?i MSI đ? phát hi?n các tùy ch?n th? l?i: 1714
<Date><Time>SLP: Không có MSI th? l?i có th? tr? l?i m? phát hi?n.</Time></Date></Time></Date></Time></Date></Time></Date></Time></Date></Time></Date></Time></Date></Time></Date></Time></Date></Time></Date></Time></Date></Time></Date></Time></Date></Time></Date></Server></Time></Date></Time></Date></Time></Date></Time></Date>

Cho SQL Server 2012 CU2 (và sau đó CU ho?c SP)
Thu g?n b?ng nàyBung r?ng b?ng này
Phiên b?n s?n ph?mThông báo l?i khi cài đ?t chuyên bi?t gói (MSI) là m?t tíchThông báo l?i khi cài đ?t chuyên bi?t b? nh? Cache gói (MSP) là m?t tích
SQL Server 2008 R2 SP1
Các t?p tin lưu tr? MSI ' C:\Windows\Installer\<file_encoded_name>.msi' m?t tích. T?p tin ban đ?u c?a nó là '' C:\Windows\Installer\sql_<featurename>.msi'}' và nó đ? đư?c cài đ?t chuyên bi?t cho s?n ph?m ' Microsoft SQL Server <version>' t? 'C:\originalfolder', phiên b?n '<versionnumber>', ngôn ng? '<language>'.</language> </versionnumber> </version> </featurename> </file_encoded_name>
T?p tin cache vá l?i "c:\Windows\Installer\1fdb1aec.msp" là m?t tích. T?p tin ban đ?u c?a nó là "sql_engine_core_inst.msp", mà có th? đư?c cài đ?t chuyên bi?t t? t?p tin lưu tr? b?n vá 11.00.2100.60.The Phiên b?n "Hotfix 2316 cho SQL Server 2012 (KB2679368) (64-bit)", "C:\Windows\Installer\<file_encoded_name>.msp' m?t tích. T?p tin ban đ?u c?a nó là '' C:\Windows\Installer\sql_<featurename>.msp'}', mà có th? đư?c cài đ?t chuyên bi?t t? ' Hotfix <number>cho SQL Server 2012 <KB number="">', phiên b?n '<versionnumber>'.</versionnumber> </KB> </number> </featurename> </file_encoded_name>

Nguyên nhân

Nh?ng v?n đ? này có th? x?y ra khi các t?p tin b? máy cơ s? d? li?u Windows Installer (.msi) ho?c t?p tin vá l?i Windows Installer (.msp) là m?t tích t? b? nh? cache c?a tr?nh cài đ?t chuyên bi?t Windows. B? nh? cache c?a tr?nh cài đ?t chuyên bi?t Windows đư?c đ?t trong c?p sau:
%windir%\installer
Khi m?t s?n ph?m đư?c cài đ?t chuyên bi?t b?ng cách s? d?ng tr?nh cài đ?t chuyên bi?t Windows, m?t phiên b?n stripped c?a t?p .msi g?c đư?c lưu tr? trong b? nh? cache c?a tr?nh cài đ?t chuyên bi?t Windows. M?i l?n c?p nh?t các s?n ph?m như m?t hotfix, b?n C?p Nh?t tích l?y ho?c m?t cài đ?t chuyên bi?t gói b?n ghi d?ch v?, c?ng mua s?m .msp có liên quan ho?c t?p .msi trong b? nh? cache c?a tr?nh cài đ?t chuyên bi?t Windows.

B?t k? C?p Nh?t trong tương lai cho các s?n ph?m như m?t hotfix, b?n C?p Nh?t tích l?y ho?c m?t cài đ?t chuyên bi?t gói b?n ghi d?ch v?, d?a trên các thông tin trong các t?p tin đư?c lưu tr? trong b? nh? cache c?a tr?nh cài đ?t chuyên bi?t Windows. Không có thông tin này, b?n c?p nh?t m?i không th? th?c hi?n các bi?n đ?i b?t bu?c.

Gi?i pháp

Đ? gi?i quy?t nh?ng v?n đ? này, s? d?ng m?t trong các th? t?c sau đây.

Th? t?c 1: S? d?ng m?t k?ch b?n

Đ? hoàn t?t các bư?c trong th? t?c này, b?n ph?i sao chép các FindSQLInstalls.vbs k?ch b?n t? ph?n "Thông tin thêm" vào m?t c?p c?c b? trên máy tính mà b?n đang c? g?ng đ? c?p nh?t c?a b?n cài đ?t chuyên bi?t SQL Server.

Lưu ? Đo?n m? FindSQLInstalls.vbs thu th?p thông tin đ? s?a ch?a đư?ng d?n không h?p l? gói. Và, k?ch b?n này đư?c s? d?ng ch?ng l?i các đ?a đi?m ngu?n đ? đ?m b?o r?ng t?t c? các gói MSP là trong m?c tin thư thoại b? nh? cache c?a tr?nh cài đ?t chuyên bi?t Windows. B?t k? gói thi?u s? đư?c tái nh?p n?u phương ti?n truy?n thông ngu?n g?c có s?n.

Đ? gi?i quy?t nh?ng v?n đ? này b?ng cách s? d?ng m?t t?p l?nh, h?y làm theo các bư?c sau:
  1. Xác đ?nh v? trí m?c tin thư thoại mà b?n lưu n?i dung k?ch b?n.
  2. M? m?t d?u ki?m nh?c l?nh cao vào m?c tin thư thoại mà b?n lưu các t?p l?nh b?t lên và ch?y l?nh sau:
    Cscript FindSQLInstalls.vbs %computername%_sql_install_details.txt
  3. M? t?p tin t? bư?c 2 trong m?t tr?nh so?n th?o văn b?n như Notepad, và xác đ?nh các v?n đ? đang gây ra s? th?t b?i. Đ? làm đi?u này, tra c?u các t?p tin văn b?n cho các chu?i mô h?nh như sau:
    • Không
    • !!!
  4. D?a trên k?t qu? trong bư?c 3, làm theo các bư?c đư?c yêu c?u.

    Lưu ? T?m thêm thông tin v? các bư?c trong ph?n "Ví d?".

  5. L?p l?i bư?c 2 đ?n 4 cho đ?n khi các t?p tin văn b?n đư?c t?o ra trong bư?c 2 không ch?a văn b?n tài li?u tham kh?o các đư?ng d?n không h?p l? ho?c các t?p tin b? m?t tích cho các thành ph?n đang đư?c C?p Nh?t.

Ví d?

Ví d? sau đây là các m?c và gi?i thích các hành đ?ng đư?c nêu trong các t?p tin đ?u ra đư?c t?o ra khi b?n ch?y FindSQLInstalls.vbs script.

Ví d? 1: Thi?u t?p tin cài đ?t chuyên bi?t
Đây là m?t ví d? v? s?n lư?ng đư?c t?o ra khi b?n đang thi?u m?t gói .msi trong c?a s? cài đ?t chuyên bi?t b? nh? cache m?c tin thư thoại.
================================================================================
PRODUCT NAME   : Microsoft SQL Server 2008 Database Engine Services
================================================================================
  Product Code: {9FFAE13C-6160-4DD0-A67A-DAC5994F81BD}
  Version     : 10.2.4000.0
  Most Current Install Date: 20110211
  Target Install Location: 
  Registry Path: 
   HKEY_CLASSES_ROOT\Installer\Products\C31EAFF906160DD46AA7AD5C99F418DB\SourceList
     Package    : sql_engine_core_inst.msi
  Install Source: \x64\setup\sql_engine_core_inst_msi\
  LastUsedSource: m;1;G:\x64\setup\sql_engine_core_inst_msi\

D?ng "LastUsedSource" ch? đ?n v? trí đ? đư?c s? d?ng đ? ch?y chương tr?nh cài đ?t chuyên bi?t.

Trong d?ng "LastUsedSource", m?c m; ngh?a là phương ti?n truy?n thông và ch? ra r?ng ngu?n g?c là phương ti?n truy?n thông đ?a CD/DVD.

Trong ví d? sau, ngu?n g?c là m?t đ?a compact ho?c DVD vào ? G. N?u ti?n tr?nh cài đ?t chuyên bi?t x?y ra t? m?t m?c tin thư thoại t?p tin ho?c t? m?t m?ng chia s?, "LastUsedSource" B?t đ?u v?i m?t m?c nh?p n; ti?p theo m?t m?c nh?p Numeric_Data_Name; và sau đó là đư?ng d?n th?c t?:
!!!! sql_engine_core_inst.msi DOES NOT exist on the path in the path G:\x64\setup\sql_engine_core_inst_msi\ !!!!
 
Action needed, re-establish the path to G:\x64\setup\sql_engine_core_inst_msi\ 

Hành đ?ng"c?n thi?t" d?ng Hi?n th? đư?ng d?n đ?y đ? mà ph?i t?n t?i đ? c?p nh?t t?p b? thi?u đ?i v?i phương ti?n cài đ?t chuyên bi?t ban đ?u:
Installer Cache File: C:\WINDOWS\Installer\19b4d2.msi 

D?ng "Cài đ?t b? nh? Cache File" xác nh?n tên c?a t?p b? nh? cache c?a tr?nh cài đ?t:
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!! C:\WINDOWS\Installer\19b4d2.msi DOES NOT exist in the Installer cache. !!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

Ph?n sau c?a đ?u ra tư v?n cho b?n v? nh?ng hành đ?ng đư?c yêu c?u đ? gi?i quy?t các t?p b? thi?u:
 Action needed, recreate or re-establish path to the directory:
     G:\x64\setup\sql_engine_core_inst_msi\then rerun this script to update installer cache and results
     The path on the line above must exist at the root location to resolve
     this problem with your msi/msp file not being found or corrupted,
     In some cases you may need to manually copy the missing file or manually
     replace the problem file overwriting it is exist: 
 
     Copy "G:\x64\setup\sql_engine_core_inst_msi\sql_engine_core_inst.msi" C:\WINDOWS\Installer\19b4d2.msi
 
     Replace the existing file if prompted to do so.
Ví d? 2: Thi?u b?n vá l?i
B?n vá l?i thi?u có th? d?n đ?n các m?c tương t? như trong ví d? 1. Ph?n l?n th?i gian, b?n s? nh?n th?y kho?n m?c trong d?ng "Patch LastUsedSource" tham kh?o m?t b?n vá, và d?ng này gi?ng như sau:
Patch LastUsedSource:   n;1;c:\0ca91e857a4f12dd390f0821a3\HotFixSQL\Files\

S?n lư?ng này cho bi?t như sau v? vi?c cài đ?t chuyên bi?t b?n vá:
  • Các mi?ng vá ban đ?u đ? đư?c cài đ?t chuyên bi?t b?ng cách nh?p đúp vào t?p tin th?c thi các b?n vá.
  • Tr?nh cài đ?t chuyên bi?t cho các b?n vá s? d?ng m?t m?c tin thư thoại t?m th?i, c:\0ca91e857a4f12dd390f0821a3, trong khi cài đ?t chuyên bi?t các b?n vá.
  • Đ? tái t?o đư?ng d?n, b?n ph?i ch?y cùng m?t t?p tin th?c thi và thêm tham s? sau đây:
    /x:c:\0ca91e857a4f12dd390f0821a3
    Lưu ? L?nh này l?c lư?ng th?c thi đ? trích xu?t các t?p tin đ?n v? trí m?t tích trư?c đó, và đi?u này l?i t?o ra c?u trúc là c?n thi?t đ? C?p Nh?t b? nh? cache cài đ?t chuyên bi?t Windows v?i b?t k? t?p b? thi?u. V? trí th?c t? s? khác nhau, và m?t b?n vá duy nh?t như m?t gói b?n ghi d?ch v? có th? đư?c gi?i nén t?i nhi?u đ?a đi?m. M?i s?n ph?m đư?c cài đ?t chuyên bi?t bao g?m m?t ph?n có ch?a các thông tin sau cho "Cài đ?t b?n vá l?i":
    Display name:
    KB Article URL:  http://support.microsoft.com/?kbid=<value>
    Patch LastUsedSource: 

    D?ng "KB bài URL" có th? giúp b?n t?i v? b?t k? phương ti?n truy?n thông b?n vá l?i, n?u đi?u này là c?n thi?t.

Th? t?c 2: T? khôi ph?c l?i các t?p tin

Đ? t? khôi ph?c l?i các t?p tin mà là m?t tích t? b? nh? cache c?a tr?nh cài đ?t chuyên bi?t Windows, h?y làm theo các bư?c sau:
  1. Thu th?p đ?y đ? chi ti?t v? các t?p tin b? m?t tích t? các thông báo l?i, t? các thi?t l?p kí nh?p t?p tin ho?c t? m?c ki?m nh?p đư?c duy tr? b?i tr?nh cài đ?t chuyên bi?t Windows. Ví d?, trong l?i tin thư thoại 1 trong ph?n "Tri?u ch?ng", t?t c? thông tin là c?n thi?t đ? gi?i quy?t v?n đ? là hi?n di?n trong các thông báo l?i:
    • PatchName: "Hotfix 1702 cho SQL Server 2008 R2 (KB981355) (64-bit)"
    • T?p tin MSP ban đ?u đư?c s? d?ng b?i các b?n vá: sql_engine_core_inst.msp
    • Lưu tr? các t?p tin MSP: c:\Windows\Installer\1fdb1aec.msp
  2. N?u b?n không có t?t c? các chi ti?t, xem các "thêm thông tin cho th? t?c 2" ph?n cho các bư?c đ? thu th?p các thông tin chi ti?t.
  3. Truy c?p vào http://support.Microsoft.com, và tra c?u các bài KB đư?c liên k?t v?i b?n vá này. Trong ví d? này, b?n ph?i tra c?u KB981355.
  4. T?i v? gói b?n vá này vào máy tính c?a b?n. H?y ch?c ch?n r?ng b?n t?i v? các gói b?n vá tương ?ng cho n?n t?ng c?n thi?t. Trong ví d? này, các gói là SQLServer2008R2-KB981355-x64.exe.
  5. Gi?i nén các n?i dung c?a gói b?n vá l?i b?ng cách s? d?ng cú pháp sau:
    C:\Temp>SQLServer2008R2-KB981355-x64.exe /x C:\Temp\SQLServer2008R2-KB981355-x64\
  6. Xác đ?nh v? trí khách s?n msp t?p tin sql_engine_core_inst.msp t?p g?c. Các t?p tin nên trong c?p sau:
    C:\Temp\SQLServer2008R2-KB981355-x64\x64\setup\sql_engine_core_inst_msi\
  7. Sao chép tranh msp ban đ?u vào b? nh? cache Windows cài đ?t chuyên bi?t sau đây:
    %windir%\installer\
  8. Đ?i t?p đ? đ?t tên tin g?c msp, sql_engine_core_inst.msp, v?i tên sau:
    msp lưu tr? t?p tin 1fdb1aec.msp

B?n có th? B?t đ?u chương tr?nh cài đ?t chuyên bi?t cho C?p Nh?t d?n đ?n l?i và ti?p t?c quá tr?nh C?p Nh?t. B?n có th? g?p thông báo này cho m?t t?p tin b? nh? cache Windows Installer thi?u cho m?t thành ph?n ho?c cho các C?p Nh?t khác c?a cùng m?t s?n ph?m.

Đ? có đư?c m?t danh sách t?t c? các c?a s? cài đ?t chuyên bi?t b? nh? cache t?p b? thi?u có liên quan đ?n thành ph?n s?n ph?m SQL Server, b?n có th? t?i v? công c? c?a SQL Server 2008 R2 BPA đư?c đ? c?p trong ph?n "Thông tin thêm".

N?u thông báo l?i tài li?u tham kh?o m?t thi?u t?p tin b? máy cơ s? d? li?u Windows Installer (.msi), b?n không c?n ph?i th?c hi?n bư?c 2 đ?n 4. Thay vào đó, b?n có th? đi tr?c ti?p t?i bư?c 5. B?n ph?i xác đ?nh v? trí .msi t? các phương ti?n truy?n thông ban đ?u mà b?n dùng đ? cài đ?t chuyên bi?t s?n ph?m. N?u thông báo l?i này đ? đư?c t?o ra cho sql_engine_core_inst.msi, sau đó b?n c?n ph?i xác đ?nh v? trí t?p này t? gi?i truy?n thông thi?t l?p theo c?u trúc m?c tin thư thoại sau đây:
\x64\setup\sql_engine_core_inst_msi\
Các bư?c khác là như nhau.

Thêm thông tin cho th? t?c 2

Làm th? nào đ? t?m th?y gói b?n vá và các chi ti?t s?n ph?m cho m?t t?p tin .msp m?t tích
Các phiên b?n khác nhau c?a các s?n ph?m t?o ra thông báo l?i khác nhau cho v?n đ? này. Các thông báo l?i đư?c đ? c?p trong ph?n "Tri?u ch?ng" xu?t hi?n cho các thi?t l?p chương tr?nh C?p Nh?t B?t đ?u v?i Microsoft SQL Server 2008 SP1. B?n C?p Nh?t khác, b?n nh?n đư?c thông báo l?i có th? không ch? r? ràng đ?nh t?p tin vá l?i đó là m?t tích t? Windows cài đ?t chuyên bi?t b? nh? cache và các chi ti?t C?p Nh?t c? th?. Cho các thông báo l?i, các thi?t l?p kí nh?p t?p tin s? ch?a thông tin v? t?p tin b? nh? cache tr?nh cài đ?t chuyên bi?t Windows b? thi?u. M?t m?u thi?t l?p kí nh?p gi?ng như sau:
MSI (s) (FC:F8) [13:48:58:649]: Opening existing patch 'C:\WINDOWS\Installer\145258.msp'.
MSI (s) (FC:F8) [13:48:58:649]: Couldn't find local patch 'C:\WINDOWS\Installer\145258.msp'. Looking for it at its source.
MSI (s) (FC:F8) [13:48:58:649]: Resolving Patch source.
MSI (s) (FC:F8) [13:48:58:649]: Note: 1: 2203 2: D:\cda162709d239766830bae5ce12b\HotFixSQL\Files\sqlrun_sql.msp 3: -2147287037 
MSI (s) (FC:F8) [13:48:58:649]: SOURCEMGMT: Source is invalid due to missing/inaccessible package.
MSI (s) (FC:F8) [13:49:29:961]: Product: Microsoft SQL Server 2005 -- Installation failed.
MSI (s) (FC:F8) [13:49:29:992]: MainEngineThread is returning 1635
This patch package could not be opened.  Verify that the patch package exists and that you can access it, or contact the application vendor to verify that this is a valid Windows Installer patch package.
D:\SQL2K5\Servers\Setup\SqlRun_SQL.msi

N?u b?n ki?m tra kí nh?p thi?t l?p này m?t cách c?n th?n, nó đ? cung c?p cho b?n các thông tin v? t?p tin ban đ?u MSP đư?c s? d?ng b?i các mi?ng vá sau đây:
sqlrun_sql.MSP


Đ? t?m thêm chi ti?t v? t?p tin .msp m?t tích trong b? nh? cache c?a tr?nh cài đ?t chuyên bi?t Windows, h?y làm theo các bư?c sau:
  1. tra c?u cho các t?p tin .msp b? thi?u trong Windows cài đ?t chuyên bi?t b?n vá l?i registry subkey sau đây:
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Patches\
  2. T?m b?n vá GUID.
  3. tra c?u các GUID Patch Windows cài đ?t chuyên bi?t s?n ph?m registry subkey sau đây:
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Products\
Cho các m?u thi?t l?p kí nh?p, các thông tin v? t?p tin .msp m?t tích và chi ti?t b?n vá tương ?ng c?a nó có m?t trong các m?c ki?m nh?p sau:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Patches\A3B085EA74A9A7640A496636F7EF9A44

Giá tr?: 0
Tên: LocalPackage
D? li?u: C:\WINDOWS\Installer\145258.msp

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Products\1EB3A031CC585314E87AA527E46EECC2\Patches\A3B085EA74A9A7640A496636F7EF9A44
Giá tr?: 6
Tên: DisplayName
D? li?u: GDR 2050 cho SQL Server b? máy cơ s? d? li?u b?n ghi d?ch v? 2005 ENU (KB932555)

Bây gi? b?n có t?t c? các đi?m thông tin đ? B?t đ?u các bư?c đ? gi?i quy?t các t?p b? thi?u trong b? nh? cache c?a tr?nh cài đ?t chuyên bi?t Windows.

Lưu ? N?u b?n s? d?ng Microsoft SQL Server 2008 Service Pack 3 (SP3) ho?c phiên b?n m?i hơn, b?n c?ng có th? nh?n đư?c m?t thông báo l?i tương t? cho t?p .msi b? thi?u. B?ng cách s? d?ng các thông báo l?i này, b?n có th? nhanh chóng xác đ?nh t?p tin mà m?t tích, gói b?n ghi d?ch v? đ? t?i v?, và nơi b?n có th? t?m th?y t?i v?.

Đ? bi?t thêm chi ti?t v? làm th? nào đ? có đư?c gói b?n ghi d?ch v?, h?y nh?p vào s? bài vi?t sau đ? xem bài vi?t trong cơ s? ki?n th?c Microsoft:
2546951 Danh sách các l?i đ? đư?c vá trong SQL Server 2008 Service Pack 3

Thông tin thêm

Đ? bi?t thêm chi ti?t v? t?p tin b? máy cơ s? d? li?u (.msi) cài đ?t chuyên bi?t Windows, ghé thăm website sau c?a Microsoft Developer Network (MSDN):
cài đ?t chuyên bi?t b? máy cơ s? d? li?u
Đ? bi?t thêm chi ti?t v? t?p tin (t?p tin .msp) Windows cài đ?t chuyên bi?t b?n vá l?i, h?y truy c?p web site MSDN sau đây:
Patch gói
Đ? bi?t thêm chi ti?t v? các chi ti?t n?i b? c?a b? nh? cache c?a tr?nh cài đ?t chuyên bi?t Windows, xem blog MSDN sau đây:
Windows cài đ?t chuyên bi?t b? nh? Cache
Đ? bi?t thêm chi ti?t v? quá tr?nh vá, xem blog MSDN sau đây:
Làm th? nào vá làm vi?c
Đ? bi?t thêm chi ti?t v? làm th? nào đ? đ?m b?o r?ng b?n b? nh? cache t?p tin vá l?i cho n?n t?ng chính xác, h?y xem blog MSDN sau đây:
SQL Server thi?t l?p nh?c v?i "s?n ph?m đư?c cài đ?t chuyên bi?t không kh?p v?i cài đ?t chuyên bi?t source(s)"
Đ? bi?t thêm chi ti?t v? l? do t?i sao b?t k? s?n ph?m nào s? d?ng tr?nh cài đ?t chuyên bi?t Windows có th? g?p ph?i v?n đ? này, h?y xem blog MSDN sau đây:
Xây d?ng l?i b? nh? Cache c?a tr?nh cài đ?t chuyên bi?t
Đ? bi?t thêm chi ti?t v? các chi ti?t v? b? khác nhau c?a thông báo l?i xu?t hi?n trong các thi?t l?p kí nh?p t?p tin, h?y xem blog MSDN sau đây:
Ph?n - 1: SQL Server 2005 Patch không cài đ?t chuyên bi?t v?i l?i "không th? cài đ?t chuyên bi?t Windows Installer MSP t?p"


Đ? bi?t thêm chi ti?t v? s?n ph?m ho?c các công c? t? đ?ng ki?m tra t?nh tr?ng này c?a b?n th? hi?n c?a SQL Server và các phiên b?n c?a s?n ph?m SQL Server, h?y xem b?ng sau:
Thu g?n b?ng nàyBung r?ng b?ng này
Ph?n m?m quy t?cTiêu đ? quy t?cMô t? quy t?cPhiên b?n s?n ph?m mà các quy t?c đư?c đánh giá
SQL Server 2008 R2 Best th?c hành Analyzer (SQL Server 2008 R2 BPA)Thi?t l?p - cài đ?t chuyên bi?t b? nh? cache là m?t tích cho ti?n tr?nh cài đ?t chuyên bi?t SQLCác SQL Server 2008 R2 Best th?c hành Analyzer (SQL Server 2008 R2 BPA) cung c?p m?t quy t?c đ? phát hi?n các t?p tin b? nh? cache thi?u cài đ?t chuyên bi?t SQL Server thành ph?n. SQL Server 2008 R2 BPA h? tr? SQL Server 2008 và SQL Server 2008 R2. N?u b?n ch?y công c? BPA và g?p l?i v?i tiêu đ? c?a thi?t l?p - cài đ?t chuyên bi?t b? nh? cache là m?t tích cho ti?n tr?nh cài đ?t chuyên bi?t SQL, và sau đó các t?p tin b? nh? cache là m?t tích t? m?c tin thư thoại b? nh? cache.SQL Server 2008
SQL Server 2008 R2
SQL Server 2012 t?t nh?t th?c hành Analyzer (SQL Server 2012 BPA)Thi?t l?p - cài đ?t chuyên bi?t b? nh? cache là m?t tích cho ti?n tr?nh cài đ?t chuyên bi?t SQLCác SQL Server 2012 t?t nh?t th?c hành Analyzer (SQL Server 2012 BPA) cung c?p m?t quy t?c đ? phát hi?n các t?p tin b? nh? cache thi?u cài đ?t chuyên bi?t SQL Server thành ph?n.N?u b?n ch?y công c? BPA và g?p l?i v?i tiêu đ? c?a thi?t l?p - cài đ?t chuyên bi?t b? nh? cache là m?t tích cho ti?n tr?nh cài đ?t chuyên bi?t SQL, và sau đó các t?p tin b? nh? cache là m?t tích t? m?c tin thư thoại b? nh? cache.SQL Server 2012



FindSQLInstalls.vbs k?ch b?n

' Copyright © Microsoft Corporation.  All Rights Reserved.
' This code released under the terms of the 
' Microsoft Public License (MS-PL, http://opensource.org/licenses/ms-pl.html.)
 
 
On Error Resume Next
 
Dim arrSubKeys, arrSubKeys2
Dim objFSO, objShell, objFile, objReg, objConn, objExec
Dim strComputer, strKeyPath, strNewSource
Dim strWorkstationName, strDBPath, strSubKey, strSubKey2(), strKeyPath02,  strRetValue00
Dim strRetValue01, strRetValue02, strRetValNew02, strRetValNew03, strRetValNew04, strRetValNew05, strRetValNew06, strRetValNew07, strRetValNew08, strRetValNew09, strRetValue10, strRetValNew10, strRetValNew11, strRetValNew12, strRetValNew13, strRetValNew14, strRetValNew14a, strRetValNew14b, strRetValNew15, strRetValNew15a, strRetValNew15b, strRetValNew16, strRetValNew17, strRetValNew18
 
Const HKCR = &H80000000 'HKEY_CLASSES_ROOT
Const HKLM = &H80000002 'HKEY_LOCAL_MACHINE
Const ForReading = 1, ForWriting = 2, ForAppEnding = 8
 
' Checking for Elevated permissions
Dim oShell, oExec
szStdOutszStdOut = ""
Set oShell = CreateObject("WScript.Shell")
Set oExec = oShell.Exec("whoami /groups")
 
Do While (oExec.Status = cnWshRunning)
    WScript.Sleep 100
       if not oExec.StdOut.AtEndOfStream Then
                szStdOut = szStdOut & oExec.StdOut.ReadAll
       end If
Loop
 select case oExec.ExitCode
   case 0
       if not oExec.StdOut.AtEndOfStream Then
           szStdOut = szStdOut & oExec.StdOut.ReadAll
       End If
       If instr(szStdOut,"Mandatory Label\High Mandatory Level") Then
                wscript.echo "Elevated, executing script and gathering requested data"
       Else
           if instr(szStdOut,"Mandatory Label\Medium Mandatory Level")  Then
          Wscript.echo "Not Elevated must run from Administrative commmand line."
       Else
          Wscript.echo "Gathering requested data..."
           end If
      End If
   case Else
       if not oExec.StdErr.AtEndOfStream Then
          wscript.echo oExec.StdErr.ReadAll
       end If
       end select
 
'
' Leaving strNewSource will result in no search path updating.
' Currently DO NOT EDIT these.
strNewSource = ""
strNewRTMSource = ""
 
' Define string values
strComputer = "."
strSQLName = "SQL"
strDotNetName = ".NET"
strVStudioName = "Visual Studio"
strXML = "XML"
strOWC = "Microsoft Office 2003 Web Components"
strKeyPath = "Installer\Products"
strKeyPath2 = "SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Products"
strNValue00 = "ProductName"
strNValue01 = "PackageName"
strNValue02 = "LastUsedSource"
strNValue03 = "InstallSource"
strNValue04 = "LocalPackage"
strNValue05 = "DisplayVersion"
strNValue06 = "InstallDate"
strNValue07 = "UninstallString"
strNValue08 = "PackageCode"
strNValue09 = "MediaPackage"
strNValue10 = "InstallSource"
strNValue11 = "AllPatches"
strNValue12 = "NoRepair"
strNValue13 = "MoreInfoURL"
strNValue14 = "PackageName"
strNValue15 = "LastUsedSource"
strNValue16 = "Uninstallable"
strNValue17 = "DisplayName"
strNValue18 = "Installed"
 
If WScript.arguments.count <> 1 Then
   WScript.echo "Usage: cscript " & WScript.scriptname & " outputfilename.txt"
   WScript.quit
End If
 
'--Setup the output file
Set fso = CreateObject("Scripting.FileSystemObject")
Set txtFile = fso.OpenTextFile(WScript.arguments(0), ForWriting, True)
If err.number <> 0 Then
    WScript.echo "Error 0x" & myHex(err.number,8) & ": " & err.source & " - " & err.description
    WScript.quit
End If
 
txtFile.writeline "Products installed on the local system"
txtFile.writeline " "
txtFile.writeline " "
 
 
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objShell = WScript.CreateObject("WScript.Shell")
 
'--Set up the registry provider.
Set objReg = GetObject("winmgmts:\\" & strComputer & _
"\root\default:StdRegProv")
 
Set wiInstaller = CreateObject("WindowsInstaller.Installer")
 
'--Enumerate the "installer\products" key on HKCR
objReg.EnumKey HKCR, strKeyPath, arrSubKeys
 
For Each strSubKey In arrSubKeys
 
' Define the various registry paths
strProduct01 = "Installer\Products\" & strSubKey
strKeyPath02 = "Installer\Products\" & strSubKey & "\SourceList"
strKeyPath03 = "Installer\Products\" & strSubKey & "\SourceList\Media"
strInstallSource = "SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Products\" & strSubKey & "\InstallProperties\"
strInstallSource2 = "SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Products\" & strSubKey & "\patches\"
strInstallSource3 = "SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Patches"
strInstallSource5 = "SOFTWARE\Classes\Installer\Patches\"
strInstallSource6 = "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\"
strInstallSource7 = "SOFTWARE\Microsoft\Microsoft SQL Server\"
strInstallSource8 = "SOFTWARE\Wow6432Node\Microsoft\Microsoft SQL Server\"
 
' Pull the intial values
objReg.GetStringValue HKCR, strProduct01, strNValue00, strRetValue00
objReg.GetStringValue HKCR, strKeyPath02, strNValue01, strRetValue01
objReg.GetStringValue HKCR, strKeyPath02, strNValue02, strRetValue02
strRetValNew02 = Mid(strRetValue02, 5)
objReg.GetStringValue HKCR, strKeyPath03, strNValue09, strRetValue09
strRetValue10 = strNewRTMSource & strRetValue09
objReg.GetStringValue HKLM, strInstallSource, strNValue03, strRetValNew03
objReg.GetStringValue HKLM, strInstallSource, strNValue04, strRetValNew04
objReg.GetStringValue HKLM, strInstallSource, strNValue05, strRetValNew05
objReg.GetStringValue HKLM, strInstallSource, strNValue06, strRetValNew06
objReg.GetStringValue HKLM, strInstallSource, strNValue07, strRetValNew07
objReg.GetStringValue HKLM, strInstallSource, strNValue10, strRetValNew10
objReg.GetStringValue HKLM, strInstallSource, strNValue12, strRetValNew12
objReg.GetStringValue HKLM, strInstallSource, strNValue13, strRetValNew13
objReg.GetStringValue HKLM, strInstallSource2, strNValue11, strRetValNew11
 
' Pull the Product Code from the Uninstall String
strProdCode = strRetValNew07
  ProdCodeLen = Len(strProdCode)
  ProdCodeLen = ProdCodeLen - 14
strRetValNew08 = Right(strProdCode, ProdCodeLen)
 
' Pull out path from LastUsedSource
strGetRealPath = strRetValue02
  GetRealPath = Len(strRetValue02)
strRealPath = Mid(strRetValue02, 5, GetRealPath)
 
' Identifie the string in the ProductName
If instr(1, strRetValue00, strSQLName, 1) Then
' Start the log output
    txtFile.writeline "================================================================================"
    txtFile.writeline "PRODUCT NAME   : " & strRetValue00
    txtFile.writeline "================================================================================"
    txtFile.writeline "  Product Code: " & strRetValNew08
    txtFile.writeline "  Version     : " & strRetValNew05
    txtFile.writeline "  Most Current Install Date: " & strRetValNew06
    txtFile.writeline "  Target Install Location: "  & strRetValNew13
    txtFile.writeline "  Registry Path: "
    txtFile.writeline "   HKEY_CLASSES_ROOT\" & strKeyPath02
    txtFile.writeline "     Package    : " & strRetValue01
    txtFile.writeline "  Install Source: " & strRetValue10
    txtFile.writeline "  LastUsedSource: " & strRetValue02
'   txtFile.writeline "Does this file on this path exist? " & strRetValNew02 & "\" & strRetValue01
    If fso.fileexists(strRetValNew02 & "\" & strRetValue01) Then
    txtFile.writeline  " "
        txtFile.writeline "    " & strRetValue01 & " exists on the LastUsedSource path, no actions needed."
    Else
        txtFile.writeline " "
        txtFile.writeline " !!!! " & strRetValue01 & " DOES NOT exist on the path in the path " & strRealPath & " !!!!"
        txtFile.writeline " "
        txtFile.writeline " Action needed, re-establish the path to " & strRealPath
' Placeholder for altering the LastUsedSource by adding source location and Forcing search of list
'        If strNewSource <> "" Then
'        txtFile.writeline "      New Install Source Path Added: " & strNewSource
'        wiInstaller.AddSource strRetValNew08, "", strNewSource
'        Else
'        If strNewRTMSource <> "" Then
'        wiInstaller.AddSource strRetValNew08, "", strNewRTMSource
'        txtFile.writeline "      Forcing SourceList Resolution For: " & strRetValNew08
'        wiInstaller.ForceSourceListResolution strRetValNew08, ""
'        End If
'        End If
    End If
        txtFile.writeline " "
        txtFile.writeline "Installer Cache File: " & strRetValNew04
    If fso.fileexists(strRetValNew04) Then
        txtFile.writeline " "
        txtFile.writeline "    Package exists in the Installer cache, no actions needed."
        txtFile.writeline "    Any missing packages will update automatically if needed assuming that"
        txtFile.writeline "    the LastUsedSource exists."
        txtFile.writeline " "
        txtFile.writeline "    Should you get errors about " & strRetValNew04 & " or " & strRealPath & strRetValue01 & " then you"
        txtFile.writeline "    may need to manually copy the file, if file exists replace the problem file, " 
        txtFile.writeline "    Copy and paste the following command line into an administrative command prompt:"
        txtFile.writeline " "
        txtFile.writeline "     Copy " & chr(34) & strRealPath  & strRetValue01 & chr(34) & " " &strRetValNew04
        txtFile.writeline " "
    ElseIf fso.fileexists(strRetValNew02 & "\" & strRetValue01) Then
              fso.CopyFile strRetValNew02 & "\" & strRetValue01, strRetValNew04
        If fso.fileexists(strRetValNew04) Then
          txtFile.writeline " "
          txtFile.writeline "     Missing cache file replaced by copying " & strRealPath  & strRetValue01 & " to " & strRetValNew04
          txtFile.writeline "     Previously missing package " & strRetValNew04 &  " now exists in the Installer cache."
          txtFile.writeline " "
        End If
    Else
        txtFile.writeline " "
        txtFile.writeline " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
        txtFile.writeline " !!!! " & strRetValNew04 & " DOES NOT exist in the Installer cache. !!!!"
        txtFile.writeline " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
        txtFile.writeline " "
        txtFile.writeline "     Action needed, recreate or re-establish path to the directory:"
        txtFile.writeline "       " & strRealPath & "then rerun this script to update installer cache and results"
        txtFile.writeline "     The path on the line above must exist at the root location to resolve"
        txtFile.writeline "     this problem with your msi/msp file not being found or corrupted,"
        txtFile.writeline "     In some cases you may need to manually copy the missing file or manually"
        txtFile.writeline "     replace the problem file overwriting it is exist: " 
        txtFile.writeline " "
        txtFile.writeline "     Copy " & chr(34) & strRealPath  & strRetValue01 & chr(34) & " " &strRetValNew04
        txtFile.writeline " "
        txtFile.writeline "     Replace the existing file if prompted to do so."
        txtFile.writeline " "
    End If
    txtFile.writeline " "
    txtFile.writeline strRetValue00 & " Patches Installed "
    txtFile.writeline "--------------------------------------------------------------------------------"
 
    err.clear
    objReg.EnumKey HKLM, strInstallSource2, arrSubKeys2
    uUpperBounds = UBound(arrSubKeys2,1)
     If err.number = 0  Then
        For Each strSubKey2 in arrSubKeys2
    '    WScript.echo "value = " & strSubKey2
 
strKeyPath04 = "Installer\Patches\" & strSubKey2 & "\SourceList"
 
     objReg.GetDWORDValue HKLM, strInstallSource2 & "\" & strSubKey2 & "\", strNValue16, strRetValue16
     objReg.GetStringValue HKCR, strKeyPath04, strNValue15, strRetValue15a
     objReg.GetStringValue HKCR, strKeyPath04, strNValue14, strRetValue14a
     objReg.GetStringValue HKCR, strKeyPath02, strNValue15, strRetValue15b
     objReg.GetStringValue HKCR, strKeyPath02, strNValue14, strRetValue14b
     objReg.GetStringValue HKLM, strInstallSource2 & "\" & strSubKey2 & "\", strNValue17, strRetValue17
     objReg.GetStringValue HKLM, strInstallSource2 & "\" & strSubKey2 & "\", strNValue18, strRetValue18
     objReg.GetStringValue HKLM, strInstallSource2 & "\" & strSubKey2 & "\", strNValue13, strRetValue13a
     objReg.GetStringValue HKLM, strInstallSource3 & "\" & strSubKey2 & "\", strNValue04, strRetValue04a
 
' Pull the URL from the MoreInfoURL String
strMoreInfoURL = strRetValue13a
  MoreInfoURLLen = Len(strMoreInfoURL)
strRetValue13b = Right(strMoreInfoURL, 42)
 
' Pull the URL from the LastUsedPath String
strLastUsedPath = strRetValue15a
  LastUsedPathLen = Len(strLastUsedPath)
  'LastUsedPathLen = LastUsedPathLen - 15
strRetValue15c = Mid(strLastUsedPath, 5)
 
      txtFile.writeline " Display Name:    " & strRetValue17 
      txtFile.writeline " KB Article URL:  " & strRetValue13b
      txtFile.writeline " Install Date:    " & strRetValue18 
              txtFile.writeline "   Uninstallable:   " & strRetValue16 
      txtfile.writeline " Patch Details: "
      txtFile.writeline "   HKEY_CLASSES_ROOT\Installer\Patches\" & strSubKey2
              txtFile.writeline "   PackageName:   " & strRetValue14a
' Determine if someone has modified the Uninstallable state from 0 to 1 allowing possible unexpected uninstalls
              txtFile.writeline "    Patch LastUsedSource: " & strRetValue15a 
              txtFile.writeline "   Installer Cache File Path:     " & strRetValue04a 
        txtFile.writeline "     Per " & strInstallSource3 & "\" & strSubKey2 & "\" & strNValue04
              mspFileName = (strRetValue15c  & strRetValue14a)
      If strRetValue14a <> "" Then
      If fso.fileexists(strRetValue04a) Then
        txtFile.writeline " "
        txtFile.writeline "    Package exists in the Installer cache, no actions needed."
        txtFile.writeline "    Package will update automatically if needed assuming that"
        txtFile.writeline "    the LastUsedSource exists."
        txtFile.writeline " "
        txtFile.writeline "    Should you get errors about " & strRetValue04a & " or " & strRetValue15c  & strRetValue14a & " then you"
        txtFile.writeline "    may need to manually copy missing files, if file exists replace the problem file, " 
        txtFile.writeline "    Copy and paste the following command line into an administrative command prompt."
        txtFile.writeline " "
        txtFile.writeline "     Copy " & chr(34) & strRetValue15c  & strRetValue14a & chr(34) & " " & strRetValue04a
        txtFile.writeline " "
      ElseIf fso.fileexists(mspFileName) Then
              fso.CopyFile mspFileName, strRetValue04a
          If fso.fileexists(strRetValue04a) Then
          txtFile.writeline " "
          txtFile.writeline " Missing cache file replaced by copying " & strRetValue15c  & strRetValue14a & " to " & strRetValue04a
          txtFile.writeline " Previously missing package " & strRetValNew04 &  " now exists in the Installer cache."
          txtFile.writeline " "
          End If
'        End If
      Else
        txtFile.writeline " "
        txtFile.writeline "!!!! " & strRetValue04a & " package DOES NOT exist in the Installer cache. !!!!"
        txtFile.writeline " "
        txtFile.writeline "     Action needed, recreate or re-establish path to the directory:"
        txtFile.writeline "       " & strRetValue15c & " then rerun this script to update installer cache and results"
        txtFile.writeline "     The path on the line above must exist at the root location to resolve"
        txtFile.writeline "     this problem with your msi/msp file not being found or corrupted,"
        txtFile.writeline "     In some cases you may need to manually copy missing files or manually"
        txtFile.writeline "     replace the problem file, " 
        txtFile.writeline " "
        txtFile.writeline "     Copy " & chr(34) & strRetValue15c  & strRetValue14a & chr(34) & " " & strRetValue04a
        txtFile.writeline " "
        txtFile.writeline "     Replace the existing file if prompted to do so."
        txtFile.writeline " "
        txtFile.writeline "     Use the following URL to assist with downloading the patch:"
        txtFile.writeline "      " & strRetValue13b
        txtFile.writeline " "
        txtFile.writeline " "
      End If
       Else
        txtFile.writeline " "
     End If
        next
     Else
        txtfile.writeline " "
        txtfile.Writeline "  No Patches Found"
        txtfile.writeline " "
    End If
 
    End If
 
 
Next
txtFile.Close
Set txtFile = Nothing
Set fso = Nothing

Thu?c tính

ID c?a bài: 969052 - L?n xem xét sau cùng: 22 Tháng Mười 2013 - Xem xét l?i: 12.0
Áp d?ng
  • Microsoft SQL Server 2008 Developer
  • Microsoft SQL Server 2008 Enterprise
  • Microsoft SQL Server 2008 Enterprise Evaluation
  • Microsoft SQL Server 2008 Express
  • Microsoft SQL Server 2008 Express with Advanced Services
  • Microsoft SQL Server 2008 Standard
  • Microsoft SQL Server 2008 Standard Edition for Small Business
  • Microsoft SQL Server 2008 Web
  • Microsoft SQL Server 2008 Workgroup
  • Microsoft SQL Server 2008 R2 Datacenter
  • Microsoft SQL Server 2008 R2 Developer
  • Microsoft SQL Server 2008 R2 Enterprise
  • Microsoft SQL Server 2008 R2 Express
  • Microsoft SQL Server 2008 R2 Express with Advanced Services
  • Microsoft SQL Server 2008 R2 Standard
  • Microsoft SQL Server 2008 R2 Standard Edition for Small Business
  • Microsoft SQL Server 2008 R2 Web
  • Microsoft SQL Server 2008 R2 Workgroup
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL Server 2005 Enterprise Edition
  • Microsoft SQL Server 2005 Enterprise Edition for Itanium-based Systems
  • Microsoft SQL Server 2005 Enterprise X64 Edition
  • Microsoft SQL Server 2005 Evaluation Edition
  • Microsoft SQL Server 2005 Express Edition
  • Microsoft SQL Server 2005 Express Edition with Advanced Services
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Standard X64 Edition
  • Microsoft SQL Server 2005 Workgroup Edition
  • Microsoft SQL Server 2005 Standard Edition for Itanium-based Systems
  • Microsoft SQL Server 2012 Developer
  • Microsoft SQL Server 2012 Enterprise
  • Microsoft SQL Server 2012 Express
  • Microsoft SQL Server 2012 Standard
  • Microsoft SQL Server 2012 Web
T? khóa: 
kbtshoot kbexpertiseinter kbprb kbsurveynew kbmt KB969052 KbMtvi
Máy d?ch
QUAN TRỌNG: Bài viết này được d?ch b?ng phần mềm dịch thu?t của Microsoft và có thể được Cộng đồng Microsoft chỉnh sửa l?i thông qua công nghệ CTF thay vì một biên dịch viên chuyên nghiệp. Microsoft cung c?p các bài vi?t đư?c c? biên d?ch viên và ph?n m?m d?ch thu?t th?c hi?n và c?ng đ?ng ch?nh s?a l?i đ? b?n có th? truy c?p vào t?t c? các bài vi?t trong Cơ s? Ki?n th?c c?a chúng tôi b?ng nhi?u ngôn ng? Tuy nhiên, bài vi?t do máy d?ch hoặc thậm chí cộng đồng chỉnh sửa sau không ph?i lúc nào c?ng hoàn h?o. Các bài vi?t này có th? ch?a các sai sót v? t? v?ng, cú pháp ho?c ng? pháp, Microsoft không ch?u trách nhi?m v? b?t k? s? thi?u chính xác, sai sót ho?c thi?t h?i nào do vi?c d?ch sai n?i dung ho?c do ho?t đ?ng s? d?ng c?a khách hàng gây ra.
Nh?p chu?t vào đây đ? xem b?n ti?ng Anh c?a bài vi?t này: 969052

Cung cấp Phản hồi

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com