知了博客

集天地之精华,吸日月之灵气

« sandy 平面自转WinCE下直接启动应用程序的方法 »

wince中文件关联的问题

wince中文件关联的问题

1、通常情况下,点击一个mp3文件,会自动地调用Mediaplayer播放。

  如果需要,我们也可以实现当点击一个特定格式的文件时,调用我们自己的程序来处理。

  先对注册表进行一些处理。

  比如我们要把后缀名为.dat的文件进行关联。首先在HKEY_CLASSES_ROOT下建一子目录.dat,Name为Default,Data为datfile。接着还是在HKEY_CLASSES_ROOT下建一子目录datfile,datfile下建两个子目录:DefaultIcon和Shell,如果对文件显示图标没有要求,DefaultIcon采用默认值,Shell往下再建Open目录,Open往下再建Command目录,在这里来指定文件关联到哪个程序,如"Program Filestest.exe" "%1",注意,必须要加上引号。

  注册表的改动告一段落。

  现在我们点击.dat文件,就可以把关联的程序激活了。

  但是,程序如何知道关联哪个文件呢?GetCommandLine()这个函数将会返回文件的路径。值得注意的是,每次点击.dat文件,都会激活一个新的程序实例。也就是说GetCommandLine()只是在mian入口处起作用。所以当一个程序实例A已经激活时,此时若点击.dat文件,如何使A得到文件路径呢?相信大家会想出各种聪明的方法来实现。

2、
Registering a File Filter
里面有详细的说明怎么加一个file filter

基本上修改注册表就可以了,如
[HKEY_CLASSES_ROOT\.bmp]
@="bmpimage"
"Content Type"="image/bmp"

[HKEY_CLASSES_ROOT\bmpfile]
@="BMP 图像 "

[HKEY_CLASSES_ROOT\bmpfile\CLSID]
@="{25336920-03F9-11cf-8FD0-00AA00686F13}"

[HKEY_CLASSES_ROOT\bmpimage]
@="BMP 图像 "

[HKEY_CLASSES_ROOT\bmpimage\DefaultIcon]
@="iexplore.exe,-1005"

[HKEY_CLASSES_ROOT\bmpimage\Shell]

[HKEY_CLASSES_ROOT\bmpimage\Shell\Open]

[HKEY_CLASSES_ROOT\bmpimage\Shell\Open\Command]
@="iexplore.exe file:%1"

 

下面是WMV文件与Windows Media Player 的文件关联:

; ---------------------------------------------------------------------------
; Windows Media Player helper/sample registry settings
;----------------------------------------------------------------------------
; @CESYSGEN IF DIRECTX_MODULES_CEPLAYER

[HKEY_CLASSES_ROOT\videofile\shell\open\command]
@="ceplayer.exe %1"

[HKEY_CLASSES_ROOT\videofile\DefaultIcon]
@="ceplayer.exe,-211"

[HKEY_CLASSES_ROOT\videofile]
@="Video File"
;"EditFlags"=hex:00,00,01,00

 

下面是WMV文件与TMPCP播放器的文件关联:

; ---------------------------------------------------------------------------
; TCPMP registry settings
;----------------------------------------------------------------------------
; @CESYSGEN IF DIRECTX_MODULES_CEPLAYER

[HKEY_CLASSES_ROOT\videofile\shell\open\command]
"TCPMP.bak"=""
"Default"="\\ResidentFlash\\TCPMP\\PLAYER.EXE \"%1\""

[HKEY_CLASSES_ROOT\videofile\DefaultIcon]
"TCPMP.bak"=""
"Default"="\\ResidentFlash\\TCPMP\\PLAYER.EXE, -1000"

[HKEY_CLASSES_ROOT\videofile]
@="Video File"
;"EditFlags"=hex:00,00,01,00

 


 

  • 相关文章:

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

日历

最新评论及回复

最近发表

Powered By Z-Blog 1.8 Arwen Build 90619 Code detection by Codefense  theme by BokeZhuti

Copyright know blog. Some Rights Reserved.站长(msn):webmaster#webgou.info(#换成@) 粤ICP备09183716号