怎么得到运行本软件的计算机的名字!
解决方案 »
- delphi和C# 目录结构的区别
- 如何解决用ADO连接失败的问题,在线等待 急......
- ◆又是100分!如何得知系统中运行了哪些dll,进而终止特定的某个(注意是dll不是exe)◆
- 如何才能顯示001..005,而不是1..5?
- 关于udpsocket严重报错的问题
- 请大家讨论数据库字段加密的解决方案
- 类相关
- 如何将鼠标限定在窗体范围之内!
- dbgrid的问题
- 很菜的问题(动态建表)?
- SQL数据UPDATE 到本地表中的问题??/---100分!!
- ●●●●●●●●mdac2.7, delphi6(Enterprise)+service pack2删除数据库有提示 '你的数据集有一个bof或eof为真',不能删除,使用DBGridE
{$EXTERNALSYM GetComputerNameW}
function GetComputerNameW(lpBuffer: PWideChar; var nSize: DWORD): BOOL; stdcall;
{$EXTERNALSYM GetComputerName}
function GetComputerName(lpBuffer: PChar; var nSize: DWORD): BOOL; stdcall;
CNameBuffer : PChar;
fl_loaded : Boolean;
CLen : ^DWord;begin GetMem(CNameBuffer,255);
New(CLen);
CLen^:= 255; fl_loaded := GetComputerName(CNameBuffer,CLen^); if fl_loaded then
ComputerName := StrPas(CNameBuffer)
else
ComputerName := 'Unkown'; FreeMem(CNameBuffer,255);
Dispose(CLen);
end;
procedure TForm1.Button1Click(Sender: TObject);
var
ComputerName: PChar;
size: DWord;
begin
GetMem(ComputerName,255);
size:=255;
//获取计算机名称
if GetComputerName(ComputerName,size)=False then
begin
MessageBox(Handle,'获取计算机名称失败。','错误',MB_OK+MB_ICONERROR);
FreeMem(ComputerName);
Exit;
end;
Edit1.Text := ComputerName;
FreeMem(ComputerName);
end;procedure TForm1.Button2Click(Sender;TObject);
var
ComputerName:PChar;
begin
GetMem(ComputerName,255);
Edit1.GetTextBuf(ComputerName,255);
//设置计算机名称
if SetComputerName(ComputerName)=False then
MessageBox(Handle,'设置计算机名称失败。','错误',MB_OK+MB_ICONERROR);
FreeMem(ComputerName);
end;
LPDWORD nSize // address of size of name buffer
);