首页 > 系统相关 >linux和window下用资源管理器打开文件所在文件夹并选中文件

linux和window下用资源管理器打开文件所在文件夹并选中文件

时间:2024-01-11 15:01:06浏览次数:37  
标签:strpicPath 文件 下用 window 文件夹 keylist programReg

1.应用场景

软件中需要定位到软件打开的文件,例如视频或者图片。用户可以方便的去通过软件去找到系统的文件;

 

2.解决方法

window系统如果文件夹已经被打开,而且是最大化状态,文件夹中文件特别多时无法选中文件,window系统会记住用户最大化文件夹的状态,导致无法定位到文件夹,这好像是window系统的缺陷,所以window系统在定位文件时,需要提前把window系统的最大化记录删除掉,使得打开文件夹时,是normal状态;

 

void DetailShow::SlotOpenFile(QString strpicPath)
{
    //打开文件夹
    if (strpicPath != "")
    {
        QProcess process;
#ifdef WIN32
        //文件管理窗口具有记忆功能,如果是最大化,将无法滚动定位到文件,只有normal大小是才会
        QSettings *programReg = NULL;
        programReg = new QSettings("HKEY_CURRENT_USER\\SOFTWARE\\Classes\\Local Settings\\Software\\Microsoft\\Windows\\Shell\\Bags\\AllFolders\\Shell\\", QSettings::NativeFormat);
        QStringList keylist = programReg->childKeys();
        for (int i = 0; i < keylist.size(); i++)
        {
            if (keylist[i].contains("MinPos") || keylist[i].contains("MaxPos") || keylist[i].contains("WinPos"))
            {
                programReg->remove(keylist[i]);
            }
        }
        strpicPath=strpicPath.replace("/", "\\");    //win32下替换斜杠
        process.startDetached("explorer", QStringList() << QString("/select,") << QString("%1").arg(strpicPath));
#else
        process.startDetached("peony", QStringList() << QString("-i") << QString("%1").arg(strpicPath));
#endif
    }
}

 

标签:strpicPath,文件,下用,window,文件夹,keylist,programReg
From: https://www.cnblogs.com/bclshuai/p/17958601

相关文章

  • vscode 打开文件夹时设置忽略指定的文件夹
    1.在.vscode文件夹下找到文件settings.json2.打开后添加如下两行"search.exclude":{},"files.exclude":{}3.分别在两个大括号中添加相应的文件后保存即可"search.exclude":{ "**/flexspi_nor_debug":true, "**/流程图":true, "**/output":tru......
  • idea 还原误删文件
    idea还原误删文件_idearevert错了怎么恢复项目名右击--》localhistory---》showhistory  查看之前删除的文件,选择误删文件,右击,恢复即可。 转自:idea还原误删文件_idearevert错了怎么恢复-CSDN博客......
  • python 处理pdf加密文件
    近期有同事需要提取加密的pdf文件,截取其中的信息,并且重构pdf文件。网上没有搜到相关的pdf操作,于是咨询了chatgpt,给出了pypdf2的使用案例。但是时间比较久远了,很多库内的调用接口都已经更新了。于是自行到官方的库内学习相关接口使用。整理的处理代码如下:#-*-coding:utf-8-*......
  • 学Windows批处理第一天:使用批处理命令生成一个文件并写入内容
    脚本功能:1、生成一个文件,文件名格式为:yyyymmddhhmmss2、文件中写入一段文本操作步骤:1、新建一个文本文档(txt格式)2、修改文件名为任意名称(我的叫create_file),修改文件类型为.bat3、使用记事本或notepad打开文件,将以下内容粘贴进去:::防止中文乱码chcp65001@echoofftitle......
  • 23年最新版pycharm找不到conda可执行文件解决办法
    引言我下载的是2023年最新版本的pycharm,新版的pycharm安装好了之后就会出现一个问题,就是在配置conda虚拟环境找不到conda的可执行文件,出现了以下问题。遇到这个问题有两种解决办法。解决办法1、第一种按照以下步骤,找到condabin文件下面,conda.bat文件,把路径给复制下来......
  • Windows: AD active directory
     gpmc.mscgpms.mscstandsforGroupPolicyManagementConsole,ItisaMicrosoftManagementConsole(MMC)snap-inthatprovidesasingleadministrativetoolformanagingGroupPolicyacrossanorganization.TheGroupPolicyManagementConsoleisusedtoc......
  • 通过windows自带管理工具、系统命令行、快捷键等快速操作
    windows自带管理工具我们win+R输入一些命令,可以快速打开一些界面,比如:sysdm.cplwin10、win11我电脑,属性与之前win7不同了,我希望打开之前的属性打不开了通过运行或命令打开系统属性,同时按Windows+R键,在运行对话框中键入命令"sysdm.cpl",然后点击确定即可。或者也可以打开命令......
  • 微信小程序创建formdata对象,并通过 wx.request 发送file文件
    本文申明:仅作学习使用需求:需要绕过wx.uploadFile进行图片的传输,通过接口给服务器问题:因涉及到域名安全问题,不能使用wx.uploadFile。微信本身没有FormData对象,无法使用newFormData后端接口需要接收一个file,所以只能想办法,通过wx.request发送multipart/form-data请......
  • Docker安装nacos(配置文件映射)
    1、拉取镜像dockerpullnacos/nacos-serverPS:这是拉取最新的nacos版本,若是要拉取指定版本,则可以在后面加上版本号(如:dockerpullnacos/nacos-server:v2.2.0)2、创建存储nacos数据信息的目录在根目录下创建/data/docker/nacos目录,用于挂载存储nacos的数据信息mkdir/data/doc......
  • windows常用命令
    找端口杀进程MicrosoftWindows[版本10.0.19045.3693](c)MicrosoftCorporation。保留所有权利。C:\Users\mawencai>netstat-ano|find"8080"TCP0.0.0.0:80800.0.0.0:0LISTENING20224TCP10.92.32.217:59849183.47.......