廣告廣告
  加入我的最愛 設為首頁 風格修改
首頁 首尾
 手機版   訂閱   地圖  簡體 
您是第 4133 個閱讀者
 
發表文章 發表投票 回覆文章
  可列印版   加為IE收藏   收藏主題   上一主題 | 下一主題   
0951020223 手機
個人文章 個人相簿 個人日記 個人地圖
初露鋒芒
級別: 初露鋒芒 該用戶目前不上站
推文 x2 鮮花 x64
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片
推文 x0
[Basic] 請問這一段語法...是什麼??
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")

這是從微軟上範例....

因為...通常都是用建立物件的函式. ..

訪客只能看到部份內容,免費 加入會員 或由臉書 Google 可以看到全部內容



獻花 x0 回到頂端 [樓 主] From:歐洲 | Posted:2006-07-03 13:02 |
ziele 手機
個人文章 個人相簿 個人日記 個人地圖
初露鋒芒
級別: 初露鋒芒 該用戶目前不上站
推文 x1 鮮花 x32
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

傳回檔案中的 ActiveX 物件的引用。
語法
GetObject([pathname] [, class])
     
GetObject 函數的語法包含下面幾個指名引數:
單元      描述

pathname      選擇性的;Variant (String)。包含待擷取物件的檔案的完整路徑和名稱。如果省略 pathname,則 class 是必要的。
class      選擇性的;Variant (String)。代表該物件的物件類別的字串。
     
其中,class 引數的語法格式為 appname.objecttype,且語法具有以下幾個單元:
單元      描述

appname      必要的;Variant (String)。提供該物件的應用程式名稱。
objecttype      必要的;Variant (String)。待建立物件的型態或物件類別。
     
請注意
使用 GetObject 函數可以存取檔案中的 ActiveX 物件,而且可以將該物件指定給物件變數。您可以使用 Set 陳述式將 GetObject 傳回的物件指定給物件變數。例如:
Dim CADObject As Object
Set CADObject = GetObject("C:\CAD\SCHEMA.CAD")
     
當執行上述程式碼時,就會啟動與指定的 pathname 相關連的應用程式,同時啟動指定檔案中的物件。
如果 pathname 是一個長度為零的字串 (""),則 GetObject 傳回指定型態的新的物件執行個體。如果省略了 pathname 引數,則 GetObject 傳回指定型態的目前使用中物件。如果目前沒有指定型態的物件,就會產生錯誤。
有些應用程式允許只啟動檔案的一部份,其方法是在檔案名稱後加上一個驚嘆號 (!) 以及用於識別想要啟動的檔案部份的字串。關於如何建立這種字串的資訊,請參閱有關應用程式建立物件的文件。
例如,在繪圖應用程式中,一個存放在檔案中的圖可能有多層。可以使用下述程式碼來啟動圖中被稱為 SCHEMA.CAD 的某一層:
Set LayerObject = GetObject("C:\CAD\SCHEMA.CAD!Layer3")
     
如果不指定物件的 class,則 Automation 會根據所提供的檔案名稱,來確定被啟動的應用程式以及被啟動的物件。不過,有些檔案可能不止支援一種物件物件類別。例如,圖片可能支援三種不同型態的物件:Application 物件,Drawing 物件,以及 Toolbar 物件,所有這些都是同一個檔案中的一部份。為了描述要具體啟動檔案中的哪種物件,就應使用這個選擇性的 class 引數。例如:
Dim MyObject As Object
Set MyObject = GetObject("C:\DRAWINGS\SAMPLE.DRW", "FIGMENT.DRAWING")
     
在上述範例中,FIGMENT 是一個繪圖應用程式的名稱,而 DRAWING 則是它支援的一種物件型態。
物件被啟動之後,就可以在程式碼中使用所宣告的物件變數來引用它。在前面的範例中,可以使用物件變數 MyObject 來存取這個新物件的屬性和方法。例如:
MyObject.Line 9, 90
MyObject.InsertText 9, 100, "Hello, world."
MyObject.SaveAs "C:\DRAWINGS\SAMPLE.DRW"
     
附註   當系統中有物件目前既存的執行個體,或是要建立已載入的檔案的物件時,就使用 GetObject 函數。如果物件目前還沒有執行個體,或是不想啟動已載入檔案的物件,則應該使用 CreateObject 函數。
如果物件已登錄成單一執行個體的物件,則不管執行多少次 CreateObject,都只能建立該物件的一個執行個體。若使用單一執行個體物件,當使用長度為零的字串 ("") 語法呼叫時,GetObject 總是傳回同一個執行個體;而若是省略 pathname 引數,就會出錯。您無法使用 GetObject 來獲取 Visual Basic 建立的物件類別的引用。


獻花 x0 回到頂端 [1 樓] From:台灣中華電信 | Posted:2006-07-04 13:56 |
ziele 手機
個人文章 個人相簿 個人日記 個人地圖
初露鋒芒
級別: 初露鋒芒 該用戶目前不上站
推文 x1 鮮花 x32
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

判斷磁碟機上的可用空間百分比

strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
  & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colDisks = objWMIService.ExecQuery _
  ("Select * from Win32_LogicalDisk Where DeviceID = 'C:'")
For Each objDisk in colDisks
  Wscript.Echo objDisk.FreeSpace
Next


獻花 x0 回到頂端 [2 樓] From:台灣中華電信 | Posted:2006-07-04 14:02 |
0951020223 手機
個人文章 個人相簿 個人日記 個人地圖
初露鋒芒
級別: 初露鋒芒 該用戶目前不上站
推文 x2 鮮花 x64
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

感謝大大提供這麼清楚的解釋...^^"

照你的解釋來說...

物件就是   ---- >>   {impersonationLevel=impersonate}
呼叫這一曾   --->> \\" & strComputer & "\root\cimv2"

對吧....^^a


那我依職很好奇....這個名稱{impersonationLevel=impersonate}  
在電腦要怎麼找阿??      
我以GetObject來解釋......
"他可能是宰入系統已經宰入的物件,只不過...我們是跟系統借用....可以這樣解釋嗎??"
跟我們平常用的CreateObject的函式....
是直接建立物件....(應該是這樣解釋吧....^^a)

而...他用GetObject來讀取...
"會不會是因為WMI物件不能用CreateObject來做"


PS:

可以知道WMI他所有的物件嗎??


拍謝...^^"
我問的問題很多.... 表情
我速穿著好奇紙尿褲長大的.... 表情


獻花 x0 回到頂端 [3 樓] From:歐洲 | Posted:2006-07-05 04:07 |

首頁  發表文章 發表投票 回覆文章
Powered by PHPWind v1.3.6
Copyright © 2003-04 PHPWind
Processed in 0.017720 second(s),query:16 Gzip disabled
本站由 瀛睿律師事務所 擔任常年法律顧問 | 免責聲明 | 本網站已依台灣網站內容分級規定處理 | 連絡我們 | 訪客留言