Danh mục

Quản lý mạng Windows bằng Script - Phần 13: Kịch bản trả về tất cả các giá trị

Số trang: 15      Loại file: pdf      Dung lượng: 1.19 MB      Lượt xem: 16      Lượt tải: 0    
tailieu_vip

Hỗ trợ phí lưu trữ khi tải xuống: 2,000 VND Tải xuống file đầy đủ (15 trang) 0
Xem trước 2 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Trong phần trước của loạt bài này chúng ta đã đến với kịch bản có tên gọi là DisplayClassProperties.vbs, đây là kịch bản hiển thị tên các thuộc tính của lớp WMI. Đây là những gì của nội dung kịch bản, bằng sử dụng Win32_BootConfiguration như một lớp, chúng ta đang kết nối vào biệt danh WMI: Option Explicit On Error Resume Next Dim strComputer Dim strWMINamespace Dim strWMIQuery Dim objWMIService Dim colItems Dim objItem strComputer = "." strWMINamespace = " ootCIMV2" strWMIQuery = ":Win32_BootConfiguration" Set objWMIService = GetObject("winmgmts:\" & strComputer & strWMINamespace & strWMIQuery) WScript.Echo "Number of properties of "...
Nội dung trích xuất từ tài liệu:
Quản lý mạng Windows bằng Script - Phần 13: Kịch bản trả về tất cả các giá trịQuản lý mạng Windows bằng Script - Phần 13: Kịch bản trả về tất cảcác giá trịTrong phần trước của loạt bài này chúng ta đã đến với kịch bản có têngọi là DisplayClassProperties.vbs, đây là kịch bản hiển thị tên các thuộctính của lớp WMI. Đây là những gì của nội dung kịch bản, bằng sửdụng Win32_BootConfiguration như một lớp, chúng ta đang kết nối vàobiệt danh WMI:Option ExplicitOn Error Resume NextDim strComputerDim strWMINamespaceDim strWMIQueryDim objWMIServiceDim colItemsDim objItemstrComputer = .strWMINamespace = ootCIMV2strWMIQuery = :Win32_BootConfigurationSet objWMIService = GetObject(winmgmts:\ &strComputer & strWMINamespace & strWMIQuery)WScript.Echo Number of properties of &strWMIQuery & class is &objWMIService.Properties_.countFor Each objItem in objWMIService.Properties_ Wscript.Echo Property: & objItem.nameNextKhi chạy kịch bản này (sử dụng các thông tin quản trị cục bộ) trên máy tínhWindows XP (với Cscript.exe được cấu hình từ trước như một kịch bảnWindows mặc định), kết quả cho được như sau:C:scripts>DisplayClassProperties.vbsMicrosoft (R) Windows Script Host Version 5.6Copyright (C) Microsoft Corporation 1996-2001. Allrights reserved.Number of properties of :Win32_BootConfigurationclass is 9Property: BootDirectoryProperty: CaptionProperty: ConfigurationPathProperty: DescriptionProperty: LastDriveProperty: NameProperty: ScratchDirectoryProperty: SettingIDProperty: TempDirectoryNhư đã đề cập đến trong phần cuối, kịch bản này có thể dễ dàng được tùychỉnh để hiển thị tên thuộc tính của bất kỳ lớp WMI nào. Ví dụ, nếu muốnhiển thị tất cả tên thuộc tính trong lớp Win32_DiskPartition, chúng ta chỉcần thay đổi dòng:strWMIQuery = :Win32_BootConfigurationthành:strWMIQuery = :Win32_DiskPartitionKhi chạy lại kịch bản thì kết quả thu được sẽ là:C:scripts>DisplayClassProperties.vbsMicrosoft (R) Windows Script Host Version 5.6Copyright (C) Microsoft Corporation 1996-2001. Allrights reserved.Number of properties of :Win32_DiskPartition classis 34Property: AccessProperty: AvailabilityProperty: BlockSizeProperty: BootableProperty: BootPartitionProperty: CaptionProperty: ConfigManagerErrorCodeProperty: ConfigManagerUserConfigProperty: CreationClassNameProperty: DescriptionProperty: DeviceIDProperty: DiskIndexProperty: ErrorClearedProperty: ErrorDescriptionProperty: ErrorMethodologyProperty: HiddenSectorsProperty: IndexProperty: InstallDateProperty: LastErrorCodeProperty: NameProperty: NumberOfBlocksProperty: PNPDeviceIDProperty: PowerManagementCapabilitiesProperty: PowerManagementSupportedProperty: PrimaryPartitionProperty: PurposeProperty: RewritePartitionProperty: SizeProperty: StartingOffsetProperty: StatusProperty: StatusInfoProperty: SystemCreationClassNameProperty: SystemNameProperty: TypeHiển thị các giá trị của mỗi thuộc tínhỞ đây chúng ta quay lại để sử dụng Win32_BootConfiguration như một lớp,nếu thay đổi để kịch bản sẽ liệt kê không chỉ tên của tất cả các thuộc tính màcòn cả giá trị của chúng thì bạn chỉ cần thay đổi dòng:Wscript.Echo Property: & objItem.namethành:Wscript.Echo Property: & objItem.name & vbTab &Value: & objItem.valueKết quả khi chạy:C:scripts>DisplayClassProperties.vbsMicrosoft (R) Windows Script Host Version 5.6Copyright (C) Microsoft Corporation 1996-2001. Allrights reserved.Number of properties of :Win32_BootConfigurationclass is 9Property: BootDirectory Value:Property: Caption Value:Property: ConfigurationPath Value:Property: Description Value:Property: LastDrive Value:Property: Name Value:Property: ScratchDirectory Value:Property: SettingID Value:Property: TempDirectory Value:Kết quả các giá trị đều là trống. Tại sao lại như vậy?Đây là những gì đang tiếp tục, hãy xem dòng này:Set objWMIService = GetObject(winmgmts:\ &strComputer & strWMINamespace & strWMIQuery)Việc đưa vào các giá trị của mỗi biến chúng ta có thể ghi lại dòng này nhưsau:Set objWMIService =GetObject(winmgmts:\. ootCIMV2:Win32_BootConfiguration)Lưu ý rằng chúng ta đang kết nối đến một lớp WMI cụ thể(Win32_BootConfiguration) trong biệt danh WMI để có thể trả về một bộgồm có các thuộc tính của lớp này. Sau đó chúng ta muốn hiển thị tên và giátrị của mỗi thuộc tính. Nhưng các giá trị được trả về NULL (trống rỗng) làbởi vì chưa kết nối được với nstance cụ thể của lớp này. WMI Glossary nóirằng một instance là “một thể hiện của thế giới thực đã quản lý đối tượngkèm với một lớp cụ thể” và “các instance gồm có giá trị thực” và giá trị thựcnày là những gì chúng ta muốn. Vậy có thể kết nối đến một instance của mộtlớp như thế nào?Để kết nối tới instance của một lớp, bạn cần phải chỉ định instance riêng biệtbằng ...

Tài liệu được xem nhiều: