獲取遠端計算機上磁碟的剩餘空間,所要獲取的遠端計算機上的磁碟可能是共享的,也可能不是共享的。如果是共享的就好辦多了,你可以不需要太多的許可權就可以獲取你想要的東西。
1 ///
<
summary
>
2 ///
獲得unc路徑所指向資料夾所在磁碟的的剩餘空間大小----需要
3 ///
<
/summary
>
4 ///
引數為uncpath和路徑所在的磁碟
5 ///
<
param
name="
uncpath
">
<
/param
>
6 ///
<
returns
>
<
/returns
>
7 private
void
btgetremotefolderfreespace_click
(object
sender,
eventargse)
8 \\root\\cimv2",
ip);24
//表示管理操作的範圍(命名空間),使用指定選項初始化
managementscope
類的、表示指定範圍路徑的新例項。
25 managementscope
scope
=new
managementscope
(path,
connectionoptions);
26 scope
.connect()
;27
//查詢字串,某磁碟上資訊
28 string
strquery
=string
.format(
"select
*from
win32_logicaldisk
where
deviceid=''
",disksrc);
29 30
objectquery
query
=new
objectquery
(strquery);
31 //
查詢managementobjectcollection返回結果集
32 managementobjectsearcher
searcher
=new
managementobjectsearcher
(scope,
query);
33 foreach
(managementobjectmin
searcher
.get()
)34
39 }
40 messagebox
.show("
磁碟"+disksrc+"
的可用空間為"+
freesize+"
gb");
41 42 }43
其中textboxsrcpath
.text是值遠端計算機的ip位址,當然了,你需要提供計算機的使用者名稱和密碼,如果該磁碟整個都共享,你甚至都不需要使用者名稱和密碼,上面的例子是磁碟的某個資料夾是共享 的,但是該磁碟不共享,如果該磁碟是共享的就可以跟據unc路徑想獲取本地磁碟剩餘空間一樣獲取該共享磁碟的剩餘空間了。
C 獲取磁碟碟符以及剩餘空間
void test2 int dtype int si 0 bool fresult unsigned int64 i64freebytestocaller unsigned int64 i64totalbytes unsigned int64 i64freebytes for int i 0 i ...
獲取磁碟使用空間和剩餘空間
char crdrv 3 cstringarray strarray ularge integer n64totalnumberofbytes,n64totalnumberoffreebytes int64 n64totalfree 0,n64totalspace 0 float ftotalfre...
通過VBS獲取磁碟剩餘空間
get disk free space strcomputer set objwmiservice getobject winmgmts strcomputer root cimv2 set coldisks objwmiservice.execquery select from win32 log...