|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
说句实话,Java跨平台根本就不是外行人想想的那种,一次编译,处处运行。注册表偶然候必要扫描远程盘算机的注册表,判别一些键值项的存在与否,大概修正他们
.NET里的Microsoft.Win32定名空间下的RegistryKey,Registry,RegistryHive就是用来操纵注册表的
|______ScanRemoteRegister___________|
|Coyprightwgscd(c)2005|
|QQ:153964481E-mail:wgscd@126.com|
|Blog:http://blog.csdn.net/wgsnet|
|______________________________________|
DimtreeVAsNewTreeView
DimSubNodeAsNewTreeNode
DimtreeNAsNewTreeNode
FunctionOpenRemoteRegister(ByValRemoteBaseKeyAsString,ByValComputerNameAsString)AsString
DimsubkeyAsMicrosoft.Win32.RegistryKey
DimkAsMicrosoft.Win32.RegistryKey=Microsoft.Win32.RegistryKey.OpenRemoteBaseKey(RemoteBaseKey,Net.Dns.GetHostByName(ComputerName).HostName)
treeV.Nodes.Add(Net.Dns.GetHostByName(ComputerName).HostName)将盘算机名增加到TreeView
treeV.Nodes.Add(k.Name)
DimsAsString
ForEachsInk.GetSubKeyNames失掉子键项Name
treeN.Nodes.Add(s)
subkey=k.OpenSubKey(s)
OpenKeys(subkey)翻开子项/键
Next
treeV.Nodes.Add(treeN)
EndFunction
SubOpenKeys(ByValKeyAsMicrosoft.Win32.RegistryKey)
k.SubKeyCount失掉子键项数
DimsAsString
DimSubKeyAsMicrosoft.Win32.RegistryKey
treeN.Nodes.Add(Key.Name)
IfKey.GetSubKeyNames.Length>0Then
ForEachsInKey.GetSubKeyNames失掉子键项Name
treeN.Nodes.Add(s)
Try
SubKey=Key.OpenSubKey(s,False)
Me.Text=s
IfsLike"*microsoft*"OrsLike"*wgscd*"Then加如搜刮前提Then加如搜刮前提
ADDYORCODE....
MsgBox(s)
EndIf
OpenKeys(SubKey)
CatchexAsException
EndTry
Next
treeV.Nodes.Add(treeN)将注册表项以子项增加到TreeView
EndIf
EndSub
Subdome()
OpenRemoteRegister(Microsoft.Win32.RegistryHive.CurrentUser,Net.Dns.GetHostByName("wgscd").HostName)扫描CurrentUser项
“wgscd”是你要扫描的远程盘算机名,注重,条件是你对“远程盘算机”有响应的权限!
OpenRemoteRegister(Microsoft.Win32.RegistryHive.LocalMachine,Net.Dns.GetHostByName("wgscd").HostName)’扫描LocalMachine项
OpenRemoteRegister(Microsoft.Win32.RegistryHive.Users,Net.Dns.GetHostByName("wgscd").HostName)扫描Users项
OpenRemoteRegister(Microsoft.Win32.RegistryHive.ClassesRoot,Net.Dns.GetHostByName("wgscd").HostName)扫描ClassesRoot项
OpenRemoteRegister(Microsoft.Win32.RegistryHive.CurrentConfig,Net.Dns.GetHostByName("wgscd").HostName)扫描CurrentConfig项
OpenRemoteRegister(Microsoft.Win32.RegistryHive.DynData,Net.Dns.GetHostByName("wgscd").HostName)扫描DynData项
EndSub
SubScanRemoteRegistry()
DimMythreadAsNewThreading.Thread(AddressOfdome)
Mythread.Start()
EndSub
SubAddTreeViewToForm()将TreeView增加到Formss上
WithtreeV
.Width=400
.Height=500
EndWith
Me.Controls.Add(treeV)
EndSub
挪用:
ScanRemoteRegistry()前天傍晚我发表了《Java的跨平台就是一句谎言。》,原本就是周末闲来无事,发表一篇略带争议性的博文让大家都来吵吵架,发表自己的看法,根本就没想着谁把谁打倒,一个行业或者是技术阵营是无法用短期口水仗打到对手的。 |
|