当前位置:编程学习 > VC++ >>

VC++ 修改计算机名称 SetComputerName

函数原型:
 
//By MoreWindows-(http://blog.csdn.net/MoreWindows)
 
BOOLWINAPISetComputerName(
 
    __in          LPCTSTRlpComputerName
 
);
 
对于计算机名称有一定的要求,MSDN的解释如下:
 
The computer name that will take effect the next time the computer is started. The name must not be longer than MAX_COMPUTERNAME_LENGTH characters. 
 
The standard character set includes letters, numbers, and the following symbols: ! @ # $ % ^ & ' ) ( . - _ { } ~ . If this parameter contains one or more characters that are outside the standard character set, SetComputerName returns ERROR_INVALID_PARAMETER. 
 
[cpp] 
// VC++修改计算机名称     
// http://blog.csdn.net/morewindows/article/details/8659430   
//By MoreWindows-(http://blog.csdn.net/MoreWindows)     
#include <windows.h>   
#include <stdio.h>   
#include <conio.h>   
int main()  
{     
    printf("    VC++修改计算机名称 \n");          
    printf(" -- By MoreWindows( http://blog.csdn.net/MoreWindows ) --\n\n");   
    const int MAX_BUFFER_LEN = 500;  
    char  szBuffer[MAX_BUFFER_LEN];  
    DWORD dwNameLen;  
      
    dwNameLen = MAX_BUFFER_LEN;  
    if (!GetComputerName(szBuffer, &dwNameLen))   
    {  
        printf("Error  %d\n", GetLastError());  
        return -1;  
    }  
    printf("当前计算机名为: %s\n", szBuffer);  
    printf("要改名吗?(y/n)\n");  
    int ch = getch();  
    ch = toupper(ch);  
    if (ch == 'Y')  
    {  
        printf("请输入新名称:");  
        gets(szBuffer);  
        if (strlen(szBuffer) != 0)  
        {  
            if (SetComputerName(szBuffer))  
                printf("恭喜!改名成功,重启后生效\n");  
            else  
                printf("Error  %d\n", GetLastError());  
        }  
    }  
    return 0;  
}  
 
// VC++修改计算机名称  
// http://blog.csdn.net/morewindows/article/details/8659430
//By MoreWindows-(http://blog.csdn.net/MoreWindows)  
#include <windows.h>
#include <stdio.h>
#include <conio.h>
int main()
{
printf("    VC++修改计算机名称 \n");        
printf(" -- By MoreWindows( http://blog.csdn.net/MoreWindows ) --\n\n"); 
const int MAX_BUFFER_LEN = 500;
char  szBuffer[MAX_BUFFER_LEN];
DWORD dwNameLen;
 
dwNameLen = MAX_BUFFER_LEN;
if (!GetComputerName(szBuffer, &dwNameLen)) 
{
printf("Error  %d\n", GetLastError());
return -1;
}
printf("当前计算机名为: %s\n", szBuffer);
printf("要改名吗?(y/n)\n");
int ch = getch();
ch = toupper(ch);
if (ch == 'Y')
{
printf("请输入新名称:");
gets(szBuffer);
if (strlen(szBuffer) != 0)
{
if (SetComputerName(szBuffer))
printf("恭喜!改名成功,重启后生效\n");
else
printf("Error  %d\n", GetLastError());
}
}
return 0;
}先修改下
 
\
 
重启后可以发现计算机的名称已经被修改了。
 
 
\
 
 
补充:软件开发 , Vc ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,