ncowboy
导航
博客园
首页
新随笔
联系
订阅
管理
<
2004年9月
>
日
一
二
三
四
五
六
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
1
2
3
4
5
6
7
8
9
公告
我把这些东西贴出来,不是为赢得你的赞誉,也不是为招致漫骂。然二者皆非我的能力能够控制。 指到实处的赞同或者反对,甚是能够赢得我的欢喜,还有,对你的钦佩。 欢迎转载,请保留作者信息。
随笔分类
browsing tips(4)
(rss)
dotNET(17)
(rss)
Linux(2)
(rss)
Oracle(2)
(rss)
PostgreSQL(1)
(rss)
VB6(1)
(rss)
生活(11)
(rss)
收藏夹
Winform
(rss)
随笔档案
2005年1月 (1)
2004年11月 (12)
2004年10月 (3)
2004年9月 (4)
2004年5月 (1)
2004年4月 (1)
2004年2月 (17)
文章档案
2004年2月 (1)
相册
public
最新评论
1. re: 准备养个蜥蜴
刚刚朋友送我一只蜥蜴。。不知道是什么品种。。。。绿色的。。。 怕它咬我。。。。。第一次养的新手。。。。想找熟手探讨问题。。。。有的请加我qq:79937316 回答姓名是:梦 谢谢。。。。...
--梦思玄
2. 长尾鬣蜥
你们好呀!我养了一只长尾晰!是母的!现在刚好是发情期!那位有公的长尾蜥想交配的话可以跟我联系呀!如果是在深圳的话那还更好,西西以为我在深圳的!QQ121442966,电话13266855349,等你们...
--方佳枫!
3. re: 准备养个蜥蜴
@邹超
我的蜥蜴刚刚也被晒死了,MD
--邹涛
统计
随笔 - 39
文章 - 1
评论 - 397
引用 - 1
常用链接
我的随笔
我的空间
我的短信
我的评论
更多链接
我的参与
我的新闻
最新评论
我的标签
留言簿
(1)
给我留言
查看留言
c#
Linux
阅读排行榜
1. 关于yahoo邮箱如何开通POP access服务(34162)
2. 如何让win XP实现自动登陆(10227)
3. 准备养个蜥蜴(8118)
4. 如何在linux下进行adsl拨号(3520)
5. asp.net上传文件图片的做法(2314)
评论排行榜
1. 准备养个蜥蜴(167)
2. 关于yahoo邮箱如何开通POP access服务(146)
3. 谁能够举出一个不存在的东西?(14)
4. 如何让win XP实现自动登陆(11)
5. 转贴:请别勉强与我交谈(10)
用c#获取本机mac(通过dll调用)
using
System;
using
System.Net;
using
System.Runtime.InteropServices;
public
enum
NCBCONST
{
NCBNAMSZ
=
16
,
/**/
/*
absolute length of a net name
*/
MAX_LANA
=
254
,
/**/
/*
lana's in range 0 to MAX_LANA inclusive
*/
NCBENUM
=
0x37
,
/**/
/*
NCB ENUMERATE LANA NUMBERS
*/
NRC_GOODRET
=
0x00
,
/**/
/*
good return
*/
NCBRESET
=
0x32
,
/**/
/*
NCB RESET
*/
NCBASTAT
=
0x33
,
/**/
/*
NCB ADAPTER STATUS
*/
NUM_NAMEBUF
=
30
,
/**/
/*
Number of NAME's BUFFER
*/
}
[StructLayout(LayoutKind.Sequential)]
public
struct
ADAPTER_STATUS
{
[MarshalAs(UnmanagedType.ByValArray, SizeConst
=
6
)]
public
byte
[] adapter_address;
public
byte
rev_major;
public
byte
reserved0;
public
byte
adapter_type;
public
byte
rev_minor;
public
ushort
duration;
public
ushort
frmr_recv;
public
ushort
frmr_xmit;
public
ushort
iframe_recv_err;
public
ushort
xmit_aborts;
public
uint
xmit_success;
public
uint
recv_success;
public
ushort
iframe_xmit_err;
public
ushort
recv_buff_unavail;
public
ushort
t1_timeouts;
public
ushort
ti_timeouts;
public
uint
reserved1;
public
ushort
free_ncbs;
public
ushort
max_cfg_ncbs;
public
ushort
max_ncbs;
public
ushort
xmit_buf_unavail;
public
ushort
max_dgram_size;
public
ushort
pending_sess;
public
ushort
max_cfg_sess;
public
ushort
max_sess;
public
ushort
max_sess_pkt_size;
public
ushort
name_count;
}
[StructLayout(LayoutKind.Sequential)]
public
struct
NAME_BUFFER
{
[MarshalAs(UnmanagedType.ByValArray, SizeConst
=
(
int
)NCBCONST.NCBNAMSZ)]
public
byte
[] name;
public
byte
name_num;
public
byte
name_flags;
}
[StructLayout(LayoutKind.Sequential)]
public
struct
NCB
{
public
byte
ncb_command;
public
byte
ncb_retcode;
public
byte
ncb_lsn;
public
byte
ncb_num;
public
IntPtr ncb_buffer;
public
ushort
ncb_length;
[MarshalAs(UnmanagedType.ByValArray, SizeConst
=
(
int
)NCBCONST.NCBNAMSZ)]
public
byte
[] ncb_callname;
[MarshalAs(UnmanagedType.ByValArray, SizeConst
=
(
int
)NCBCONST.NCBNAMSZ)]
public
byte
[] ncb_name;
public
byte
ncb_rto;
public
byte
ncb_sto;
public
IntPtr ncb_post;
public
byte
ncb_lana_num;
public
byte
ncb_cmd_cplt;
[MarshalAs(UnmanagedType.ByValArray, SizeConst
=
10
)]
public
byte
[] ncb_reserve;
public
IntPtr ncb_event;
}
[StructLayout(LayoutKind.Sequential)]
public
struct
LANA_ENUM
{
public
byte
length;
[MarshalAs(UnmanagedType.ByValArray, SizeConst
=
(
int
)NCBCONST.MAX_LANA)]
public
byte
[] lana;
}
[StructLayout(LayoutKind.Auto)]
public
struct
ASTAT
{
public
ADAPTER_STATUS adapt;
[MarshalAs(UnmanagedType.ByValArray, SizeConst
=
(
int
)NCBCONST.NUM_NAMEBUF)]
public
NAME_BUFFER[] NameBuff;
}
public
class
Win32API
{
[DllImport(
"
NETAPI32.DLL
"
)]
public
static
extern
char
Netbios(
ref
NCB ncb);
}
class
GetMac
{
public
static
void
Main()
{
string
addr
=
""
;
int
cb;
ASTAT adapter;
NCB Ncb
=
new
NCB();
char
uRetCode;
LANA_ENUM lenum;
Ncb.ncb_command
=
(
byte
)NCBCONST.NCBENUM;
cb
=
Marshal.SizeOf(
typeof
(LANA_ENUM));
Ncb.ncb_buffer
=
Marshal.AllocHGlobal(cb);
Ncb.ncb_length
=
(
ushort
)cb;
uRetCode
=
Win32API.Netbios(
ref
Ncb);
lenum
=
(LANA_ENUM)Marshal.PtrToStructure(Ncb.ncb_buffer,
typeof
(LANA_ENUM));
Marshal.FreeHGlobal(Ncb.ncb_buffer);
if
(uRetCode
!=
(
short
)NCBCONST.NRC_GOODRET)
Console.WriteLine(
""
);
for
(
int
i
=
0
; i
<
lenum.length ;i
++
)
{
Ncb.ncb_command
=
(
byte
)NCBCONST.NCBRESET;
Ncb.ncb_lana_num
=
lenum.lana[i];
uRetCode
=
Win32API.Netbios(
ref
Ncb);
if
(uRetCode
!=
(
short
)NCBCONST.NRC_GOODRET)
Console.WriteLine(
""
);
Ncb.ncb_command
=
(
byte
)NCBCONST.NCBASTAT;
Ncb.ncb_lana_num
=
lenum.lana[i];
Ncb.ncb_callname[
0
]
=
(
byte
)
'
*
'
;
cb
=
Marshal.SizeOf(
typeof
(ADAPTER_STATUS))
+
Marshal.SizeOf(
typeof
(NAME_BUFFER))
*
(
int
)NCBCONST.NUM_NAMEBUF;
Ncb.ncb_buffer
=
Marshal.AllocHGlobal(cb);
Ncb.ncb_length
=
(
ushort
)cb;
uRetCode
=
Win32API.Netbios(
ref
Ncb);
adapter.adapt
=
(ADAPTER_STATUS)Marshal.PtrToStructure(Ncb.ncb_buffer,
typeof
(ADAPTER_STATUS));
Marshal.FreeHGlobal(Ncb.ncb_buffer);
if
(uRetCode
==
(
short
)NCBCONST.NRC_GOODRET)
{
if
(i
>
0
)
addr
+=
"
:
"
;
addr
=
string
.Format(
"
{0,2:X}{1,2:X}{2,2:X}{3,2:X}{4,2:X}{5,2:X}
"
,
adapter.adapt.adapter_address[
0
],
adapter.adapt.adapter_address[
1
],
adapter.adapt.adapter_address[
2
],
adapter.adapt.adapter_address[
3
],
adapter.adapt.adapter_address[
4
],
adapter.adapt.adapter_address[
5
]);
}
}
Console.WriteLine( addr.Replace(
'
'
,
'
0
'
));
}
}
posted on 2004-09-28 11:08
35号房客
阅读(571)
评论(0)
编辑
收藏
所属分类:
dotNET
社区
新闻
新用户注册
刷新评论列表
标题
姓名
主页
Email
(只有博主才能看到)
验证码
*
看不清,换一张
[
登录
][
注册
]
内容(请不要发表任何与政治相关的内容)
Remember Me?
登录
使用高级评论
新用户注册
返回页首
恢复上次提交
[使用Ctrl+Enter键可以直接提交]
另存
打印
所属分类的其他文章:
·
Quick .Net File Download Security
·
Installing the FrontPage Hit Counter Web Bot
·
可能你没有注意的Exception的属性
·
用c#获取本机mac(通过dll调用)
·
使用WMI获取远程机器操作系统的详细信息
·
NScript - A script host for C#/VB.NET/JScript.NET
·
Navigator Proxy Auto-Config File Format
·
写桌面程序应该遵循的几个惯例
·
给datagrid绑定内容
·
asp.net上传文件图片的做法
最新IT新闻:
·
万名Linux使用者向暴雪请愿Linux版《Diablo III》
·
56.com我乐网将全面转行 退出视频行业
·
Joost借道TOM在线 将正式进军中国
·
微软副总裁公开承认Vista存在问题
·
互联网DNS存在重大漏洞 黑客可能控制网络流量
博客园新闻频道
博客园首页
社区
Powered by:
博客园
Copyright © 35号房客