前往业界动态栏目前往脑场特工栏目暂未开通前往IN评测栏目暂未开通前往大家的PCINLIFE暂未开通

赞助商广告

官方活动宣传

发新话题
打印

切换默认声卡的命令行怎么写?

切换默认声卡的命令行怎么写?

多了块声卡就插上了,看电视,war3,cs等需要在耳机和音箱间切换输出" ]& ?% B8 Q7 B

* P% E4 e& M( z# }% t' x想弄个bat文件双击切换8 Q1 j% r+ Z5 J) i+ W
这个命令行怎么写?
  Z3 M! C0 e2 H3 N( l: lmmsys.cpl -??????0 h7 M. h) ^5 t9 t5 w5 f/ j

) q/ y. \- o) s9 Y  U% r) Y[ 本帖最后由 wangxiao` 于 2007-10-27 09:20 编辑 ]

附件: 您所在的用户组无法下载或查看附件

TOP

[广告] 买猫头鹰CPU散热器特价,还送i7 扣具一套! | Vista降临,PC够强吗?远景带您进入绚烂的美化世界

偶也很想知道

TOP

[广告] 买猫头鹰CPU散热器特价,还送i7 扣具一套! | Vista降临,PC够强吗?远景带您进入绚烂的美化世界

满足你。。。。。。。。。。
& H/ R  N3 [7 b+ x" D3 W& D5 Q+ Q, Y* I$ p
仅限XP、2003的面板,其它系统的可能要调整一下。! z( E% K" l' {9 W
由于是程序模拟按键,脚本运行时不要动键盘,确保面板是活动窗口。
复制内容到剪贴板
代码:

'切换默认声卡
'Coded by gzXW
Option Explicit
Dim WshShell
Set WshShell = CreateObject("WScript.Shell" )

'运行音频面板
WshShell.Run("rundll32.exe shell32.dll,Control_RunDLL mmsys.cpl,,2" )
WScript.Sleep(200)

'模拟按键,如果有更多声卡,可以多按几次Down键
WshShell.SendKeys("{DOWN}" )
WshShell.SendKeys("{ENTER}" )

附件: 您所在的用户组无法下载或查看附件
本帖最近评分记录
  • chairmanai 活跃指数 +3 精品文章,以后要再发好贴哦 2007-10-27 23:51
  • chairmanai 贡献值 +3 精品文章,以后要再发好贴哦 2007-10-27 23:51

TOP

[广告] 买猫头鹰CPU散热器特价,还送i7 扣具一套! | Vista降临,PC够强吗?远景带您进入绚烂的美化世界

真系得窝,赞!这个贴应该大大的加分加精,提议加亮顶置。 - o* _4 y3 D* `/ R0 n' T
但建议可否再修改一下,改做成两个脚本,比如说有A和B两张声卡,运行脚本1就选择A声卡,运行脚本2就选择B声卡。不然只有一个脚本切换的话,可能转两下都不记得现在是那张声卡了

TOP

[广告] 买猫头鹰CPU散热器特价,还送i7 扣具一套! | Vista降临,PC够强吗?远景带您进入绚烂的美化世界

试了一下用API编程来实现,但不起作用。这方面的资料很少,搞不清是什么原因。, K- Q8 C1 n5 }: g) V$ r

# ^) z! J# M. x6 W, A: ]) l用vbscript貌似没什么办法实现LS的要求 ,我再想想。

TOP

[广告] 买猫头鹰CPU散热器特价,还送i7 扣具一套! | Vista降临,PC够强吗?远景带您进入绚烂的美化世界

想到一个50%符合terryddb要求的方法:5 @8 W+ u( O2 i1 h
条件是两块声卡的名称首字母是不同的, 比如设备面板里显示声卡1为“SB Live” ,声卡2为“Realtek HD”。5 ~* a" k1 ]$ x! l8 H$ b
OK,此时在面板模拟按“S”时是选择声卡1,按“R”时是选择声卡2。
6 f) E9 P& ?7 z9 l" v! D总结,脚本应该这样写:9 J. b! y$ K/ f4 Z* c8 U+ L. S5 a

* [) }# u9 K% ^9 s) DChange_to_SB.vbs
复制内容到剪贴板
代码:

'切换默认声卡
'Coded by gzXW
Option Explicit
Dim WshShell
Set WshShell = CreateObject("WScript.Shell" )
'运行音频面板
WshShell.Run("rundll32.exe shell32.dll,Control_RunDLL mmsys.cpl,,2" )
WScript.Sleep(200)

'模拟按键,选择声卡“SB Live”,首字母是S
WshShell.SendKeys("{S}" )
WshShell.SendKeys("{ENTER}" )
Change_to_Realtek.vbs
复制内容到剪贴板
代码:

'切换默认声卡
'Coded by gzXW
Option Explicit
Dim WshShell
Set WshShell = CreateObject("WScript.Shell" )
'运行音频面板
WshShell.Run("rundll32.exe shell32.dll,Control_RunDLL mmsys.cpl,,2" )
WScript.Sleep(200)

'模拟按键,选择声卡“Realtek HD”,首字母是R
WshShell.SendKeys("{R}" )
WshShell.SendKeys("{ENTER}" )

附件: 您所在的用户组无法下载或查看附件
本帖最近评分记录
  • 酷风 活跃指数 +3 精品文章,以后要再发好贴哦 2007-10-28 19:38
  • 酷风 贡献值 +3 精品文章,以后要再发好贴哦 2007-10-28 19:38

TOP

[广告] 买猫头鹰CPU散热器特价,还送i7 扣具一套! | Vista降临,PC够强吗?远景带您进入绚烂的美化世界

造福全人类啊

TOP

[广告] 买猫头鹰CPU散热器特价,还送i7 扣具一套! | Vista降临,PC够强吗?远景带您进入绚烂的美化世界

高人啊!!!PF~PF
# \' P( a$ G& X4 o4 SVBS代码可以移植到VB上吗?如何实现呢?

TOP

[广告] 买猫头鹰CPU散热器特价,还送i7 扣具一套! | Vista降临,PC够强吗?远景带您进入绚烂的美化世界

引用:
原帖由 gzXW 于 2007-10-28 11:09 发表 & s0 B( P% m" p* l+ H7 B7 ~- A
想到一个50%符合terryddb要求的方法:  Q. @' V: V9 Y& U3 p7 o4 F
条件是两块声卡的名称首字母是不同的, 比如设备面板里显示声卡1为“SB Live” ,声卡2为“Realtek HD”。
' F- v& V3 F% X$ I, h5 nOK,此时在面板模拟按“S”时是选择声卡1,按“R”时是选择声卡2。 ...
3 M' @* y# y+ }. r+ f& tOrz,真系好掂 ,非常感谢gzXW兄弟!现在可以轻松转换指定的声卡了。), U2 r+ d3 U+ p9 Q" O; }
替gzXW再说明一下,各位有两张或更多声卡兄弟,只要你的声卡在声音和音频属性里的设备名首字母不是一样的就简单了(就是声卡的首名字是一样也是可以的请看下面)5 m/ }+ Z% c+ Q% X8 m
把gzXW提供的VBS文件用记事本打开,修改为你自己的声卡设备名和首写字母,例如我现在想转换为LYNXTWO-B,vbs就是改成下面那样:1 {7 D) z. c& _" f

" x3 R6 e1 a9 t1 e( c'切换默认声卡( B! B2 j# q* J, N  \
'Coded by gzXW
  ?# @0 U' L/ t- W/ A8 _Option Explicit
2 [2 ]# }* v  h" h6 SDim WshShell, K# s4 F) d4 y4 b1 H
Set WshShell = CreateObject("WScript.Shell" )* C! H* Y, r6 \& |3 ]0 q- @
'运行音频面板  }/ x! z. I' a) e0 @
WshShell.Run("rundll32.exe shell32.dll,Control_RunDLL mmsys.cpl,,2" )
" k, H. ?, Y* m0 {  a0 CWScript.Sleep(200)% `" q% S  N* d
'模拟按键,选择声卡“LynxTWO-B”,首字母是L
4 A5 C4 n5 n0 Z; @: p5 fWshShell.SendKeys("{L}" )0 `1 \+ ^- }4 r5 w+ t
WshShell.SendKeys("{ENTER}" )
- z# }/ Y9 d" j5 T6 [1 I* O, e: V' W1 o5 e
另外gzXW提供的Change_Default_Sound_Device.vbs是可以通过在选择音频设备时按上下键的次数来达到切换到指定设备的目的的。
4 |( E6 V$ l8 s+ A6 Y" I) B这样就算是声卡的首名字是一样的也是可以指定切换了。( x5 T# Y2 Z/ W. z& A
好比LYNX TWO,音频设备里其实是8个设备,因为它有8条立体声通道,声音和音频属性里显示为LynxTWO-B Device 1,LynxTWO-B Device 2等,我现在想指定使用第1通道或第8通道都行。具体方法大家自己打开声音和音频属性想一想试一试吧,肯定可以的。; C8 \/ o, o8 \' Z  j
. t0 q, H, A) m) w, o' s* Z
呵呵真的再次感谢gzXW兄弟
  D5 B  ~3 L5 z+ \2 u/ l" X: [( R; U, J6 P8 F1 c5 S, l9 i& l
[ 本帖最后由 terryddb 于 2007-10-28 17:29 编辑 ]

TOP

[广告] 买猫头鹰CPU散热器特价,还送i7 扣具一套! | Vista降临,PC够强吗?远景带您进入绚烂的美化世界

引用:
原帖由 水影 于 2007-10-28 16:21 发表
% z% z% ~1 {) r8 c: O+ \# a, ^ 高人啊!!!PF~PF
1 f/ x- ^& Y; `3 S+ EVBS代码可以移植到VB上吗?如何实现呢?
! x% M1 K# r3 O* l9 k% H) d- k" D& ~
可以,vb中不用创建wscript对象,直接用run语句对应shell, sendkey是一样的。. {. g) y3 @( M# l7 |; d9 z

/ z/ B7 k: B* K1 L& n% h/ \大家的声卡不一样,都是需要修改键的,还是用vbs方便。如果用vb,编译后就改不了,除非用.ini 配置文件,程序就复杂了。
" Q5 U$ \( u% O% L4 f3 `真要做到高级一些,还是得用vb,直接发消息控制combox控件,这样就可以实现精确选择。/ F( N2 F5 l/ {
; s! E$ O2 l* L: n# C" ^* ~: m
[ 本帖最后由 gzXW 于 2007-10-28 18:59 编辑 ]

TOP

[广告] 买猫头鹰CPU散热器特价,还送i7 扣具一套! | Vista降临,PC够强吗?远景带您进入绚烂的美化世界

高手真多呀!

TOP

[广告] 买猫头鹰CPU散热器特价,还送i7 扣具一套! | Vista降临,PC够强吗?远景带您进入绚烂的美化世界

谢谢已经收藏!其实最方便的是有一个小调音台!

TOP

[广告] 买猫头鹰CPU散热器特价,还送i7 扣具一套! | Vista降临,PC够强吗?远景带您进入绚烂的美化世界

感谢3楼gzXW!
9 Z; b, ?; [# R& O+ s! I% m这两天3c玩多了,忘记来看帖  T5 @8 j) P' U5 Y, f6 h% E8 @
gz好人多强人多  L2 ^7 p$ P4 u& [) U6 d& V

! q) n: E1 p* x$ a4 E8 z2 c另外问下,调音台哪里买?

TOP

[广告] 买猫头鹰CPU散热器特价,还送i7 扣具一套! | Vista降临,PC够强吗?远景带您进入绚烂的美化世界

引用:
原帖由 gzXW 于 2007-10-28 18:57 发表
4 D0 e% `) G7 d* `+ X8 H  g) t9 s- b  S2 B

# h( m2 i4 h, r0 s( S# e可以,vb中不用创建wscript对象,直接用run语句对应shell, sendkey是一样的。
/ |8 B- j* {/ [' j+ T2 N" A
) m2 T9 e$ E6 n- I% D# C大家的声卡不一样,都是需要修改键的,还是用vbs方便。如果用vb,编译后就改不了,除非用.ini 配置文件,程序就复杂了。
9 C" B4 J* N; e- z5 Q+ c" a/ c真要做 ...
/ N; x' G3 ]6 v
" T/ M1 H; K+ D+ T) R明白了~! " K; G3 C: q; d8 }) A: N. D
正烦恼声卡间的切换问题呢~这下好了!

TOP

[广告] 买猫头鹰CPU散热器特价,还送i7 扣具一套! | Vista降临,PC够强吗?远景带您进入绚烂的美化世界

真的有牛人啊,这个不顶不行了,强烈顶

TOP

[广告] 买猫头鹰CPU散热器特价,还送i7 扣具一套! | Vista降临,PC够强吗?远景带您进入绚烂的美化世界

电脑可以插双声卡吗???

TOP

[广告] 买猫头鹰CPU散热器特价,还送i7 扣具一套! | Vista降临,PC够强吗?远景带您进入绚烂的美化世界

引用:
原帖由 gzXW 于 2007-10-27 23:33 发表 4 n: L# H6 T" U8 B7 R
满足你。。。。。。。。。。
" Y( A1 z/ O" C+ Z3 x# j* y+ X7 d6 S! t0 S* I2 s
仅限XP、2003的面板,其它系统的可能要调整一下。' U1 c% s+ v# e; O- s
由于是程序模拟按键,脚本运行时不要动键盘,确保面板是活动窗口。  B! e; i- R! e, m8 U* Z

. u% [, ]6 @" q' t& h) T7 d' H$ f! \: l% J: }/ r- k
'切换默认声卡6 S: ]+ ]$ a- K0 b
'Coded by gzXW5 x# p0 z6 i& [. J1 y$ n
Option Explicit% K+ Q0 `+ I4 I- f! V: c
Dim W ...
- J$ u% i1 L/ a8 w' x
牛B人啊,真的是藏龙卧虎之地啊,赞一个

TOP

[广告] 买猫头鹰CPU散热器特价,还送i7 扣具一套! | Vista降临,PC够强吗?远景带您进入绚烂的美化世界

使用中发现个问题,可能我机器慢,选择“V”声卡总是会运行到桌面V开头的程序 ,键盘鼠标都没动,是不是要加点延迟?

TOP

[广告] 买猫头鹰CPU散热器特价,还送i7 扣具一套! | Vista降临,PC够强吗?远景带您进入绚烂的美化世界

引用:
原帖由 sigher 于 2007-10-29 11:01 发表 - S  m: Z: a. m8 _
使用中发现个问题,可能我机器慢,选择“V”声卡总是会运行到桌面V开头的程序 ,键盘鼠标都没动,是不是要加点延迟?
+ d: [) V' X$ n" z
5 D0 A# C8 @, E, a# N自己可以调整,就是下面这句:
5 j" D9 n0 y! ?. W  C" QWScript.Sleep(200). g4 `( f! ~7 C- g
+ S1 D) I) Z) K3 W0 J
200是毫秒值,可以根据实际情况调整。

TOP

[广告] 买猫头鹰CPU散热器特价,还送i7 扣具一套! | Vista降临,PC够强吗?远景带您进入绚烂的美化世界

发新话题

Processed in 0.051707 second(s), 8 queries, Gzip enabled. 粤ICP备06054911号