关于在win2k下修改计算机名的问题

zyu_nim 2004-12-19 06:13:15
我需要在win2k下修改计算机名,搜寻多日,现在只知道可以用SetComputerNameEx,但如何实现还是不得其解,希望哪位高手可以贴一个具体的code。多谢了。
...全文
87 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
jhtzz 2004-12-24
  • 打赏
  • 举报
回复
首先窗体:
Option Explicit

Private Sub Command1_Click()
Dim mstrExtComputerNameOrg As String
Dim mlngExtComputerNameTypeOrg As Long

Dim strExtComputerName As String
Dim lngWin32apiResultCode As Long
strExtComputerName = "Admin" '计算机名
mlngExtComputerNameTypeOrg = ComputerNamePhysicalDnsHostname
MsgBox SetComputerNameEx(mlngExtComputerNameTypeOrg, strExtComputerName)

End Sub

下面是模块:
Option Explicit

Public Const MAX_COMPUTERNAME_LENGTH = 31
Public Const COMPUTERNAMBUFFER_LENGTH = MAX_COMPUTERNAME_LENGTH + 1
Public Const ERROR_BUFFER_OVERFLOW = 111&
Public Const ERROR_ENVVAR_NOT_FOUND = 203&
Public Const ERROR_MORE_DATA = 234&

Enum COMPUTER_NAME_FORMAT
ComputerNameNetBIOS
ComputerNameDnsHostname
ComputerNameDnsDomain
ComputerNameDnsFullyQualified
ComputerNamePhysicalNetBIOS
ComputerNamePhysicalDnsHostname
ComputerNamePhysicalDnsDomain
ComputerNamePhysicalDnsFullyQualified
ComputerNameMaxEnd
End Enum


Declare Function GetComputerNameEx Lib "kernel32.dll" Alias "GetComputerNameExA" (ByVal NameType As Long, ByVal lpBuffer As String, lpnSize As Long) As Long

Declare Function SetComputerNameEx Lib "kernel32.dll" Alias "SetComputerNameExA" (ByVal NameType As Long, ByVal lpBuffer As String) As Long
'上面这些定义可在职msdn上找到
'我的QQ:117563781,加起大家互相学习呀
tztz520 2004-12-23
  • 打赏
  • 举报
回复
Private Const COMPUTER_SCHEMA_NAME As String = ("Computer")
zyu_nim 2004-12-23
  • 打赏
  • 举报
回复
大家都来帮忙看一看啊
zyu_nim 2004-12-19
  • 打赏
  • 举报
回复
主要是这个COMPUTER_NAME_FORMAT定义应该如何来写呢?
cindytsai 2004-12-19
  • 打赏
  • 举报
回复
看看:
http://community.csdn.net/Expert/topic/3419/3419290.xml?temp=.8708765
http://search.csdn.net/Expert/topic/552/552587.xml?temp=.7317774

1,488

社区成员

发帖
与我相关
我的任务
社区描述
VB API
社区管理员
  • API
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧