[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[网络连接] 思路征集:批处理获取本地连接的名称

中文系统,默认是"本地连接";英文系统,默认是"Local Area Connection";其它语言操作系统,未知;此外,用户还可能自己修改了本地连接的名称。如何用批处理来获取本地连接的名称呢?我先抛个砖:
  1. @echo off
  2. rem 获取本地连接名称
  3. rem WinXP SP2 EN 测试通过
  4. rem WinXP SP3 CS 测试通过
  5. reg export "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkCards" "%temp%\MyNet.reg" >nul
  6. for /f "tokens=1 delims=:" %%a in ('type "%temp%\MyNet.reg"^|findstr /n Ethernet') do (
  7.   set "DstRow=%%a"
  8.   goto :next
  9. )
  10. goto :eof
  11. :next
  12. set /a SkpRow=DstRow-2
  13. for /f "skip=%SkpRow% tokens=2 delims={}" %%a in ('type "%temp%\MyNet.reg"^|findstr .*') do (
  14.   for /f "skip=6 tokens=*" %%b in ('reg query "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Network\{4D36E972-E325-11CE-BFC1-08002BE10318}\{%%a}\Connection"') do (
  15.     set LcoNet=%%b
  16.     call echo %%LcoNet:~12%%
  17.     goto :eof
  18.   )
  19. )
复制代码
感谢8楼提供的测试用例!
1

评分人数

我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

回复 3楼 的帖子

你的注册表里面有没有这个分支:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Network\{4D36E972-E325-11CE-BFC1-08002BE10318}\{5FBB2E38-FBE8-4F2D-908A-88FA06960529}\Connection

能否把你的本地连接所在的注册表分支贴出来看看?应该在这个下面的其中一个:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Network\{4D36E972-E325-11CE-BFC1-08002BE10318}\
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

回复 2楼 的帖子

WinXP SP2 EN 测试结果
Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.

C:\Test>test.bat
ECHO is off.

C:\Test>wmic nic get netconnectionid /value

NetConnectionID=
NetConnectionID=
NetConnectionID=
NetConnectionID=
NetConnectionID=
NetConnectionID=
NetConnectionID=
NetConnectionID=
NetConnectionID=
NetConnectionID=
NetConnectionID=Local Area Connection
NetConnectionID=
NetConnectionID=Wireless Network Connection
NetConnectionID=
NetConnectionID=1394 Connection
NetConnectionID=
NetConnectionID=
NetConnectionID=
NetConnectionID=VMware Network Adapter VMnet1
NetConnectionID=VMware Network Adapter VMnet8
NetConnectionID=
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

reg export导出的"%temp%\MyNet.reg"里面有没有{5D4BF871-B3AC-4806-869C-B859C0B73BC3}?
第一个for命令有没有正确的把{5D4BF871-B3AC-4806-869C-B859C0B73BC3}所在行赋值给变量DstRow?
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

回复 8楼 的帖子

知道原因了,双网卡。修改一下第一个for命令就行了,我稍后在顶楼更新。
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

回复 12楼 的帖子

然后怎么确定哪个是呢?
C:\Test>netsh interface show interface

Admin State    State          Type             Interface Name
-------------------------------------------------------------------------
Enabled                       Dedicated        Wireless Network Connection
Enabled                       Dedicated        Local Area Connection
Enabled                       Dedicated        VMware Network Adapter VMnet1
Enabled                       Dedicated        VMware Network Adapter VMnet8
Enabled                       Dedicated        1394 Connection
Enabled                       Internal         Internal
Enabled                       Loopback         Loopback
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

回复 14楼 的帖子

关键是后面那句“此外,用户还可能自己修改了本地连接的名称。”
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

返回列表