+ -
当前位置:首页 → 问答吧 → 双击文件,打开执行程序

双击文件,打开执行程序

时间:2011-12-27

来源:互联网

举例来说就是WORD保存为DOC文件或者CAD保存为DWG文件,双击这种文件则会打开WORD程序和CAD程序。
问题:自定义了一种格式的文件,如何将其与我自己的程序挂在一起,双击它则会打开我的程序。
PS:用软件方法。

作者: zyrr159487   发布时间: 2011-12-27

1.自己关联文件打开的程序 
打开文件-》选择打开方式-》关联自己的程序-》选择始终使用这个程序打开!

http://blog.sina.com.cn/s/blog_4fb3d92a0100f2so.html

作者: shen_wei   发布时间: 2011-12-27

http://support.microsoft.com/kb/147805

这是个vb的版本,改成vc的十分容易

作者: jennyvenus   发布时间: 2011-12-27

在注册表 HKEY_CLASSES_ROOT下面 .扩展名 键上
网上搜下资料或者参考下 .txt的配置

作者: hotpos   发布时间: 2011-12-27

作者: dream0411   发布时间: 2011-12-27

MFC中的话,App类的InitInstance函数
EnableShellOpen();
RegisterShellFileTypes(TRUE);

作者: VisualEleven   发布时间: 2011-12-27

C/C++ code
// Enable DDE Execute open
    EnableShellOpen();//为在Windows中使用外壳操作打开文件作准备
    RegisterShellFileTypes(TRUE);//向系统注册文件类型,以使用外壳操作。

作者: fight_in_dl   发布时间: 2011-12-27

To 1 楼 shen_wei 的回复:]
RegisterShellFileTypes(); //在Windows中注册关联文件
查MSDN可以看出默认参数是FALSE,楼下的几位的参数是TRUE,这里的参数是TRUE还是FALSE会影响到什么呢

作者: zyrr159487   发布时间: 2011-12-27

To 4 楼 dream0411 的回复:]
图标如何关联呢,需要覆盖的是APP的ICO还是DOC的ICO呢

作者: zyrr159487   发布时间: 2011-12-27

一眨眼就到底了

作者: zyrr159487   发布时间: 2011-12-27

注册表编程

作者: langshanglibie   发布时间: 2011-12-27

图标不太清楚,可能是DOC的图标吧,一个程序可以对应多重文件的。

作者: dream0411   发布时间: 2011-12-27

参考下我写的,这个是bcb,你把它改成vc的就可以了,就注册表几个地方动下
  TRegistry *reg=new TRegistry;
  reg->RootKey=HKEY_LOCAL_MACHINE;
  reg->OpenKey("Software\\classes\\.yls",true);
  reg->WriteString("","ylsfile");
  reg->CloseKey();
  reg->OpenKey("Software\\classes\\ylsfile\\shellex\\DropHandler",true);
  reg->WriteString("","{86C86720-42A0-1069-A2E8-08002B30309D}");
  reg->CloseKey();
  reg->OpenKey("Software\\classes\\ylsfile\\shell\\open\\command",true);
  reg->WriteString("",newpath+" \"%1\" %*");
  reg->CloseKey();
  reg->OpenKey("Software\\classes\\ylsfile\\DefaultIcon",true);
  reg->WriteExpandString("",newpath+",0");
  reg->CloseKey();

作者: evemaple   发布时间: 2011-12-27

ShellExecute(this->m_hWnd,"open",path,"","",SW_SHOW );

作者: g6785654   发布时间: 2011-12-27

楼主测试成功了没有????

作者: shen_wei   发布时间: 2011-12-27