C++选择文件打开方式的函数

摘要:
最近,我让我的同事给UE4一个功能来识别。ts和。json文件,然后双击这些文件以直接打开它们。默认情况下双击当json运行时,我调用Windows附带的记事本打开文件。我不习惯。我想知道是否可以像右键单击菜单一样选择打开哪个应用程序。例如,我指定Visual Studio代码或SublimeText。

最近让同事给UE4一个功能,识别出 .ts、.json文件,然后双击这些文件可以直接打开。


默认双击 .json 时,调用 Windows 自带的记事本打开文件,不习惯,想着能否像右键菜单一样选择用哪个应用程序打开,比如我指定Visual Studio Code 或者 Sublime Text。

图片也类似,默认不用系统自带的,比如我安装的其它浏览图片工具(如下图的 ImageGlass)

C++选择文件打开方式的函数第1张


这个效果是“Open With‘,而不是‘Open’


代码也比较简单,就是调用 SHOpenWithDialog 函数。

#include <iostream>
#include <Windows.h>
#include <ShlObj.h>

int main()
{
    //std::cout << "Hello World!
";

    //reference : https://stackoverflow.com/questions/18326507/how-to-get-command-line-of-windows-open-with-function
    OPENASINFO info = {0};
    info.pcszFile = L"C:\Users\xx\Desktop\test.png";
    info.pcszClass = NULL;
    info.oaifInFlags = OAIF_ALLOW_REGISTRATION | OAIF_EXEC;
    
    SHOpenWithDialog(NULL, &info);

    return 0;
}

免责声明:文章转载自《C++选择文件打开方式的函数》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇MongoDB线程安全批量处理git的配置下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

PHP 配置文件中open_basedir选项作用

如下是php.ini中的原文说明以及默认配置: ; open_basedir, if set, limits all file operations to the defined directory ; and below. This directive makes most sense if used in a per-directory or ; pe...

Python(2.7)-文件操作(file)

3.1文件操作(files)               Python提供了必要的函数和方法进行默认情况下的文件基本操作。你可以用file对象做大部分的文件操作        3.1.1打开文件 3.1.1.1 open()             Python内置了一个打开文件的函数open(),用来打开一个文件,创建一个file对象,然后你就可以对该打...

文件操作

python的文件操作 1. 文件操作的函数open(文件名(路径), mode="?", encoding="字符集")2. 模式: r, w, a, r+, w+, a+, rb, wb, ab, r+b, w+b, a+b 文件路径: 1. 绝对路径,从磁盘的根目录寻找 或者 从互联网上寻找一个路径2. 相对路径(用的多). 相对于当前程序所在的文件...

linux内核驱动中对文件的读写 【转】

本文转载自:http://blog.chinaunix.net/uid-13059007-id-5766941.html 有时候需要在Linux kernel--大多是在需要调试的驱动程序--中读写文件数据。在kernel中操作文件没有标准库可用,需要利用kernel的一些函数,这些函数主 要有: filp_open() filp_close(), vfs...

open与fopen 文件描述符与文件指针

首先说一下文件描述符与文件指针区别: 文件描述符:在linux系统中打开文件就会获得文件描述符,它是个很小的正整数。每个进程在PCB(Process Control Block)中保存着一份文件描述符表,文件描述符就是这个表的索引,每个表项都有一个指向已打开文件的指针。 文件指针:C语言中使用文件指针做为I/O的句柄。文件指针指向进程用户区中的一个被称为...

Perl文件系统

一、文件输入/输出函数 1、基本I/O函数 open:允许程序访问文件  close:终止文件访问  print:文件写入字符串  write:向文件写入格式化信息  printf:格式化字符串并输出到文件  1)open函数 open函数将文件变量与某文件联系起来,提供访问文件的接口,例如:open(MYVAR, "/u/file"); 如果文件打开成功...