搜索
查看: 5431|回复: 6

sys库增加getComputerName函数 获取计算机名!

[复制链接]

12

主题

624

帖子

3649

积分

荣誉会员

子非魚、安知魚之樂

Rank: 8Rank: 8

积分
3649
发表于 2012-4-10 20:10:59 | 显示全部楼层 |阅读模式
本帖最后由 xauto 于 2012-5-15 17:59 编辑

在api手册里面查到GetComputerName函数声明

aardio声明
GetComputerName = ::Kernel32.api("GetComputerNameA","int(str &lpBuffer,int &nSize)")

示例 :
GetComputerName = ::Kernel32.api("GetComputerNameA","int(str &lpBuffer,int &nSize)")

var ok,name,size = GetComputerName(16, 16)
io.open()
if(ok)io.print(name)



注意缓冲区大小应为 _MAX_COMPUTER_NAME + 1 ,也就是 16

下面我们把他添加到sys库中
打开sys库源码,在getUserName函数后面加上下面的代码:

::Kernel32 :=..raw.loadDll("Kernel32.dll")
GetComputerName = ::Kernel32.api(
"GetComputerNameA","int(str &lpBuffer,int &nSize)")

getComputerName = function(){
   
var ok,name = GetComputerName_(32,32);  
   
if(ok)return name;
}

最后修改智能提示:

/**intellisense(sys)
getUserName() = 返回当前登录用户名
getComputerName() = 返回当前计算机名
end intellisense**/


测试代码 :

import sys;
io.open();
io.print( sys.getComputerName() )






回复

使用道具 举报

52

主题

1341

帖子

7331

积分

荣誉会员

Rank: 8Rank: 8

积分
7331
发表于 2012-4-10 20:31:03 | 显示全部楼层

{:soso_e100:} 谢谢 xauto 整理 ,学习

{:soso_e100:} 谢谢 xauto 整理 ,学习
回复

使用道具 举报

4

主题

150

帖子

901

积分

三级会员

Rank: 4

积分
901
发表于 2012-4-10 20:31:20 | 显示全部楼层

支持

支持
回复

使用道具 举报

7

主题

302

帖子

1893

积分

四级会员

Rank: 6Rank: 6

积分
1893
QQ
发表于 2012-4-11 09:37:12 | 显示全部楼层

写库的例子,学习!

写库的例子,学习!
每天进步一点点......
回复

使用道具 举报

56

主题

475

帖子

3808

积分

荣誉会员

Rank: 8Rank: 8

积分
3808
发表于 2012-4-11 13:08:14 | 显示全部楼层

[quote][size=2][color=#999999]laniv 发表于 2012-4-10 22:47[/color] [url=forum.php?m

laniv 发表于 2012-4-10 22:47
谢谢 XAUTO,嘿嘿。

import win
SetComputerNameEx=Kernel32.api(
"SetComputerNameEx","int(int iType,string lpComputerName)")

setComputerNameEx=
function(str){
   
return SetComputerNameEx(5,str) ? "成功" : "失败"
}

io.open()

set=setComputerNameEx(
"aardio")

io.print(set)

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

手机版|未经许可严禁引用或转载本站文章|站长邮箱|aardio.com|aardio官方社区 ( 皖ICP备09012014号 )

GMT+8, 2018-1-23 17:51 , Processed in 0.062503 second(s), 19 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表