社区
网络编程
帖子详情
同一个问题第3贴,没人会啊? 顶者有分啊,现3个贴子140分 晕。如何判断本地连接是10M,100M,1000M.
xyxfly
2006-07-20 01:39:34
如题
需要写一程序判断。
请高手指点
...全文
177
5
打赏
收藏
同一个问题第3贴,没人会啊? 顶者有分啊,现3个贴子140分 晕。如何判断本地连接是10M,100M,1000M.
如题 需要写一程序判断。 请高手指点
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
czcolin
2006-07-20
打赏
举报
回复
顶者有分....
顶了再说...
Elysium
2006-07-20
打赏
举报
回复
广东深圳 温卫江
---- 在 实 际 的 应 用 系 统 中, 我 们 往 往 会 需 要 在 程 序 运 行 时 获 取 当 前 机 器 的 网 卡 的MAC 地 址, 以 便 作 为 某 种 标 识 之 用, 如 控 制 程 序 的 合 法 性 等。 下 文 介 绍 如 何 用Microsoft Visual C + + 6.0 开 发 这 样 的 程 序。
----这 里 采 用 的 方 法 是 通 过Windows 9x/NT/Win2000 中 内 置 的NetApi32.DLL 的 功 能 来 实 现 的。 首 先 通 过 发 送 NCBENUM 命 令, 获 取 网 卡 的 数 目 和 每 张 网 卡 的 内 部 编 号, 然 后 对 每 个 网 卡 标 号 发 送NCBASTAT 命 令 获 取 其MAC 地 址。 注 意: 这 里 的 网 卡 是 指 捆 绑 了NetBEIU 协 议 的 通 信 协 议 栈, 可 以 在 网 卡 的 属 性 处 查 看 到。
----请 运 行VC + +, 打 开 一 个 新 的 工 程, 选 择 创 建 一 个Win32 Console 程 序, 然 后 按 下 文 输 入 代 码, 并 请 参 见 其 中 的 注 释:
#include “stdafx.h"
#include
#include
#include
#include
#include
// 因 为 是 通 过NetAPI 来 获 取 网 卡 信 息,
所 以 需 要 包 含 其 题 头 文 件nb30.h
#include
typedef struct _ASTAT_
{
ADAPTER_STATUS adapt;
NAME_BUFFER NameBuff [30];
}ASTAT, * PASTAT;
ASTAT Adapter;
// 定 义 一 个 存 放 返 回 网 卡 信 息 的 变 量
// 输 入 参 数:lana_num 为 网 卡 编 号,
一 般 地, 从0 开 始, 但 在Windows 2000 中
并 不 一 定 是 连 续 分 配 的
void getmac_one (int lana_num)
{
NCB ncb;
UCHAR uRetCode;
memset( &ncb, 0, sizeof(ncb) );
ncb.ncb_command = NCBRESET;
ncb.ncb_lana_num = lana_num;
// 指 定 网 卡 号
// 首 先 对 选 定 的 网 卡 发 送 一 个
NCBRESET 命 令, 以 便 进 行 初 始 化
uRetCode = Netbios( &ncb );
printf( “The NCBRESET
return code is: 0x %x \n", uRetCode );
memset( &ncb, 0, sizeof(ncb) );
ncb.ncb_command = NCBASTAT;
ncb.ncb_lana_num = lana_num; // 指 定 网 卡 号
strcpy((char *)ncb.ncb_callname,“ * " );
ncb.ncb_buffer = (unsigned char *) &Adapter;
// 指 定 返 回 的 信 息 存 放 的 变 量
ncb.ncb_length = sizeof(Adapter);
// 接 着, 可 以 发 送NCBASTAT 命 令
以 获 取 网 卡 的 信 息
uRetCode = Netbios( &ncb );
printf( “The NCBASTAT return code is:
0x %x \n", uRetCode );
if ( uRetCode == 0 )
{
// 把 网 卡MAC 地 址 格 式 化 成
常 用 的16 进 制 形 式, 如0010 -A4E4 -5802
printf( “The Ethernet Number[ %d] is:
%02X %02X - %02X %02X - %02X %02X\n",
lana_num,
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] );
}
}
int main(int argc, char * argv[])
{
NCB ncb;
UCHAR uRetCode;
LANA_ENUM lana_enum;
memset( &ncb, 0, sizeof(ncb) );
ncb.ncb_command = NCBENUM;
ncb.ncb_buffer = (unsigned char *) &lana_enum;
ncb.ncb_length = sizeof(lana_enum);
// 向 网 卡 发 送NCBENUM 命 令,
以 获 取 当 前 机 器 的 网 卡 信 息,
如 有 多 少 个 网 卡、 每 张 网 卡 的 编 号 等
uRetCode = Netbios( &ncb );
printf( “The NCBENUM return code is:
0x %x \n", uRetCode );
if ( uRetCode == 0 )
{
printf( “Ethernet Count is : %d\n\n", lana_enum.length);
// 对 每 一 张 网 卡, 以 其 网 卡 编 号 为
输 入 编 号, 获 取 其MAC 地 址
for ( int i=0; i
----此 时, 按F7 编 译, 按F5 运 行 即 可。
----这 段 代 码 可 以 直 接 嵌 入 相 关 的 应 用 系 统 之 中, 或 封 装 成.DLL 或COM 控 件, 以 便 可 以 在Visual Basic、Visual Foxpro、Power Builder 或Delphi 等 其 他 程 序 中 调 用。
Elysium
2006-07-20
打赏
举报
回复
如何改變網卡工作的速度
Posted by GongDa under 電腦 , Linux
No Comments
在 linux 連線版上面的看到的文章,小州大大的回答。
mii-tool 在 linux 中還有一個不錯的使用方式是用來觀察接到電腦上網路線有沒有訊號,判斷網路線沒有插對。
發信人: kenduest.bbs@bbs.sayya.org (小州), 看板: Linux
標 題: Re: [問題]如何改變網卡工作的速度
發信站: SayYA 資訊站 (Sat May 6 14:53:42 2006)
轉信站: ptt!ctu-reader!news.nctu!SayYa
※ 引述《jazzter.bbs@bbs.wretch.cc (月光晒了很涼快)》之銘言:
> > 大家好
> > 我用是Mandriva 10.2
> > 我看它網卡套用的是叫e1000的模組
> > 速度是100Mbps全雙工
> > 我想把它改成10Mbps全雙工
> > 不知道要怎麼改??
作者: kenduest (小州) 看板: Linux
標題: Re: [問題]如何設定網路卡為"10 Full Mode"
時間: Wed Feb 1 22:21:59 2006
※ 引述《NONOsister.bbs@bbs.yzu.edu.tw (Call me "GiMoun)》之銘言:
> > ※ 引述《edyfox.bbs@ptt.cc (滇狐)》之銘言:
>> > > 不懂……
>> > > 現在的網卡不都是 10M / 100M 自適應的麼?
> > 原本應該是自動適應的
> > 他會自己設定成100M
> > 可是我必須要強迫將網卡設定成10M的
> > 在Windows中有個Link speed可以強迫設定
> > 在Linux中我還沒有發現哪裡可以設定
> > 唯一的是在X-window中的控制中心好像可以設定
> > 但是不知道模組的參數要下什麼
> > 因此需要上來問問有經驗的人
假設你的網路卡設定是在 /etc/sysconfig/network-scripts/ifcfg-eth0
檔案,那請於該檔案加上:
ETHTOOL_OPTS="speed 10 duplex half autoneg off"
這是使用 10M 半雙工。
這些是 ethtool 程式傳入參數,詳細說明請執行 ethtool 或者是查閱
manpage。
然後使用 ifdown eth0 ; ifup eth0 完成該動作,並使用 mii-tool
程式觀察目前設定。ex:
mii-tool -v
當然,mii-tool 也可以改速度,不過 networking script 是呼叫
ethool 程式,所以上面就是提到傳入該參數來達成需求。
--
折腾_苏州
2006-07-20
打赏
举报
回复
去看看我的BLOG:
http://blog.csdn.net/seu07201213/archive/2006/07/07/891274.aspx
FOX7899
2006-07-20
打赏
举报
回复
估计注册表里有 仔细找找 ;)
我在CSDN参与的3000个帖子
今日偶然翻到,感慨万千 1:申述:版主,是否扣了我的专家
分
? 2:100
分
急求,随机输出十个小写字母,但是,要求这十个字母不相同 3:求Sn=a+aa+aaa+…+aaa…a(n个a)之值 4:数组题 望高手帮忙! 5:呵呵,来推荐一下我的网站,本站提供大量当今流行的免费的音乐和免费电影,常用软件、游戏、精美图库下载,希望对网友有帮助!顺便散
分
! 6:VBA请教怎
C/C++笔试题(很多)
微软亚洲技术中心的面试题!!! 1.进程和线程的差别。 线程是指进程内的一个执行单元,也是进程内的可调度实体. 与进程的区别: (1)调度:线程作为调度和
分
配的基本单位,进程作为拥有资源的基本单位 (2)并发性:不仅进程之间可以并发执行,
同一个
进程的多个线程之间也可并发执行 (3)拥有资源:进程是拥有资源的独立单位,线程不拥有系统资源,但可以访问隶属于进程的资源. (4
一个上海同济大学教师的工资单(zt tianya)
作者:大好灰狼 提交日期:2004-3-7 23:04:39 一个上海同济大学教师的工资单2004年3月 在天涯上看到了某人
贴
出的工资条,每月3000多元还说少,心里真不是滋味。说实在的,吃这碗饭不容易,在北京上海教书的各位自然明白这话的苦味。当然,同在一个大学,教不同的科目之间有相当大的差距。我们这里说的只是大多数的那些教师的收入而已了。本人
贴
出自己本月的工资单,目的只是与各位
c/c++笔试题
微软亚洲技术中心的面试题!!! 1.进程和线程的差别。 线程是指进程内的一个执行单元,也是进程内的可调度实体. 与进程的区别: (1)调度:线程作为调度和
分
配的基本单位,进程作为拥有资源的基本单位 (2)并发性:不仅进程之间可以并发执行,
同一个
进程的多个线程之间也可并发执行 (3)拥有资源:进程是拥有资源的独立单位,线程不拥有系统资源,但可以访问隶属于进程的资源. (4)系统
C/C++笔试题
微软亚洲技术中心的面试题!!! 1.进程和线程的差别。 线程是指进程内的一个执行单元,也是进程内的可调度实体. 与进程的区别: (1)调度:线程作为调度和
分
配的基本单位,进程作为拥有资源的基本单位 (2)并发性:不仅进程之间可以并发执行,
同一个
进程的多个线程之间也可并发执行 (3)拥有资源:进程是拥有资源的独立单位,线程不拥有系统资源,但可以访问隶属于进程的资源. (4
网络编程
18,356
社区成员
64,214
社区内容
发帖
与我相关
我的任务
网络编程
VC/MFC 网络编程
复制链接
扫一扫
分享
社区描述
VC/MFC 网络编程
c++
c语言
开发语言
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章