Qt如何双击自定义文件后使用自编程序打开

wopabe 2014-02-26 10:03:48
使用Qt开发了一个工具,使用该工具可以打开自定义格式并且自定义后缀的文件,然后进行编辑。
现在,我想实现:双击这种文件后,直接使用我开发的这个工具打开,然后进入编辑。
(该工具已做成安装版发布,右键文件在打开程序里选择该工具后,工具可以打开,但文件未打开)

哪位大侠有这方面的经验,指导下。
...全文
497 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
wopabe 2014-03-03
  • 打赏
  • 举报
回复
引用 3 楼 Linmson 的回复:
一楼和二楼的建议都有用,我测试了一下这个小程序(是控制台不是GUI程序,不过原理是一样的):

#include <stdio.h>
#include <conio.h>

void main(int argc, char* argv[])
{
    printf("Qt Test Cpp\n");
    printf("argc: %d\n", argc);
    if(argc > 1)
        printf("%s", argv[1]);
    getch();
}
生成的exe文件为QtTestCpp.exe 当直接双击QtTestCpp.exe时,argc为1,argv[0]的值是当前QtTestCpp.exe的全路径。 当在cmd命令行执行该程序时,若不指定参数 执行效果为: 若指定参数,则执行效果为: 在文件上右键指定QtTestCpp.exe打开某程序时,和指定参数是一样的。程序可以获得右键时所选的全文件名,之后程序可根据该文件名打开文件,指定操作。这也就是主函数的参数的作用。
很遗憾,GUI程序和控制台还真不一样 比如,在主函数里打印就打印不了
寒山-居士 2014-02-28
  • 打赏
  • 举报
回复
这个东西 涉及到文件关联,还有就是在mian里面可以将文件路径传进来 即可以进行处理,话说Qt是可以实现这种功能的,我们公司以前做过apk的安装器,就是修改文件的图标为应用程序图标,双击apk即可启动应用程序处理该文件
lm_whales 2014-02-27
  • 打赏
  • 举报
回复
QT没用过,MFC貌似比较容易只要是处理 OPEN 菜单命令
Linmson 2014-02-27
  • 打赏
  • 举报
回复
一楼和二楼的建议都有用,我测试了一下这个小程序(是控制台不是GUI程序,不过原理是一样的):

#include <stdio.h>
#include <conio.h>

void main(int argc, char* argv[])
{
printf("Qt Test Cpp\n");
printf("argc: %d\n", argc);
if(argc > 1)
printf("%s", argv[1]);
getch();
}

生成的exe文件为QtTestCpp.exe
当直接双击QtTestCpp.exe时,argc为1,argv[0]的值是当前QtTestCpp.exe的全路径。
当在cmd命令行执行该程序时,若不指定参数 执行效果为:


若指定参数,则执行效果为:

在文件上右键指定QtTestCpp.exe打开某程序时,和指定参数是一样的。程序可以获得右键时所选的全文件名,之后程序可根据该文件名打开文件,指定操作。这也就是主函数的参数的作用。

  • 举报
回复
@Linmson 程序怎么获取右键时所选的全文件名?
dbzhang800 2014-02-26
  • 打赏
  • 举报
回复
程序内有没有处理 main() 函数中的命令行参数 也就是说 yourApplication filePath 这样能不能打开文件
狂风暴雨 2014-02-26
  • 打赏
  • 举报
回复
就像双击zip自动使用winrar打开一样的是吧? 这个和Qt没有关系。 写入注册表就行了。。 你看下如何手动添加到。。然后用qt写入相应的注册表就行了。 我做过,是可以的。 http://hi.baidu.com/killura/item/ad57f83a68ed188bf4e4ada7

16,235

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧