如何批量添加过滤器到文件选择器?

2023-12-11

我正在使用此代码来创建带有批处理的文件选择器Windows 批处理脚本中的文件/文件夹选择器对话框

@echo off
set dialog="about:<input type=file id=FILE><script>FILE.click();new ActiveXObject
set dialog=%dialog%('Scripting.FileSystemObject').GetStandardStream(1).WriteLine(FILE.value);
set dialog=%dialog%close();resizeTo(0,0);</script>"
for /f "tokens=* delims=" %%p in ('mshta.exe %dialog%') do set "file=%%p"
echo selected  file is : "%file%"
pause

所以我的问题是:如何批量添加过滤器到文件选择器?

例如我只想添加.rar仅选择 winrar 文件


我在此处发布的 vbscript 中找到了另一个解决方案:

绝对终极的浏览文件对话框(w95 到 w8),带有启动文件夹和过滤器

Function GetFileDlgEx(sIniDir,sFilter,sTitle) 
 Set oDlg = CreateObject("WScript.Shell").Exec("mshta.exe ""about:<object id=d classid=clsid:3050f4e1-98b5-11cf-bb82-00aa00bdce0b></object><script>moveTo(0,-9999);eval(new ActiveXObject('Scripting.FileSystemObject').GetStandardStream(0).Read("&Len(sIniDir)+Len(sFilter)+Len(sTitle)+41&"));function window.onload(){var p=/[^\0]*/;new ActiveXObject('Scripting.FileSystemObject').GetStandardStream(1).Write(p.exec(d.object.openfiledlg(iniDir,null,filter,title)));close();}</script><hta:application showintaskbar=no />""") 
 oDlg.StdIn.Write "var iniDir='" & sIniDir & "';var filter='" & sFilter & "';var title='" & sTitle & "';" 
 GetFileDlgEx = oDlg.StdOut.ReadAll 
End Function
'sample test
sIniDir = "C:\MyFile.rar" 
sFilter = "RAR files (*.rar)|*.rar|" 
sTitle = "WinRar Password Cracker by Hackoo (Only Digits numbers)" 
MyFile = GetFileDlgEx(Replace(sIniDir,"\","\\"),sFilter,sTitle) 
wscript.echo MyFile

编辑:于 15/07/2016 @02:04

并使用这样的批处理文件生成它:

@echo off
Title The absolute ultimate Browse for file dialog (w95 to w8) with start folder and filters
(
    echo Function GetFileDlgEx(sIniDir,sFilter,sTitle^) 
    echo Set oDlg = CreateObject("WScript.Shell"^).Exec("mshta.exe ""about:<object id=d classid=clsid:3050f4e1-98b5-11cf-bb82-00aa00bdce0b></object><script>moveTo(0,-9999);eval(new ActiveXObject('Scripting.FileSystemObject').GetStandardStream(0).Read("^&Len(sIniDir^)^+Len(sFilter^)^+Len(sTitle^)+41^&"));function window.onload(){var p=/[^\0]*/;new ActiveXObject('Scripting.FileSystemObject').GetStandardStream(1).Write(p.exec(d.object.openfiledlg(iniDir,null,filter,title)));close();}</script><hta:application showintaskbar=no />"""^) 
    echo oDlg.StdIn.Write "var iniDir='" ^& sIniDir ^& "';var filter='" ^& sFilter ^& "';var title='" ^& sTitle ^& "';" 
    echo GetFileDlgEx = oDlg.StdOut.ReadAll 
    echo End Function
    echo sIniDir = "C:\MyFile.rar" 
    echo sFilter = "RAR files (*.rar)|*.rar|" 
    echo sTitle = "WinRar Password Cracker by Hackoo (Only Digits numbers)" 
    echo MyFile = GetFileDlgEx(Replace(sIniDir,"\","\\"^),sFilter,sTitle^) 
    echo wscript.echo MyFile
)>"%tmp%\%~n0.vbs"
for /f "tokens=* delims=" %%p in ('Cscript /NoLogo "%tmp%\%~n0.vbs"') do set "file=%%p"
echo %file%
pause

孔代码:

@echo off
mode con cols=70 lines=20 & color 0B
Title WinRar Password Cracker by Hackoo (Only Digits numbers)
:Rar
(
    echo Function GetFileDlgEx(sIniDir,sFilter,sTitle^) 
    echo Set oDlg = CreateObject("WScript.Shell"^).Exec("mshta.exe ""about:<object id=d classid=clsid:3050f4e1-98b5-11cf-bb82-00aa00bdce0b></object><script>moveTo(0,-9999);eval(new ActiveXObject('Scripting.FileSystemObject').GetStandardStream(0).Read("^&Len(sIniDir^)^+Len(sFilter^)^+Len(sTitle^)+41^&"));function window.onload(){var p=/[^\0]*/;new ActiveXObject('Scripting.FileSystemObject').GetStandardStream(1).Write(p.exec(d.object.openfiledlg(iniDir,null,filter,title)));close();}</script><hta:application showintaskbar=no />"""^) 
    echo oDlg.StdIn.Write "var iniDir='" ^& sIniDir ^& "';var filter='" ^& sFilter ^& "';var title='" ^& sTitle ^& "';" 
    echo GetFileDlgEx = oDlg.StdOut.ReadAll 
    echo End Function
    echo sIniDir = "C:\MyFile.rar" 
    echo sFilter = "RAR files (*.rar)|*.rar|" 
    echo sTitle = "WinRar Password Cracker by Hackoo (Only Digits numbers)" 
    echo MyFile = GetFileDlgEx(Replace(sIniDir,"\","\\"^),sFilter,sTitle^) 
    echo wscript.echo MyFile
)>"%tmp%\%~n0.vbs"
for /f "tokens=* delims=" %%p in ('Cscript /NoLogo "%tmp%\%~n0.vbs"') do set "file=%%p"
cls
echo           ----------------------------------------------
echo                          GET DETAIL
echo           ----------------------------------------------
echo.
set "Rarext=.rar"
echo selected  file is : "%file%"
setlocal enabledelayedexpansion
for %%i in ("%file%") do (
set ext=%%~xi
IF /I Not "!Rarext!"=="!ext!" Color 0C && echo This file is not a winrar file the extension must be ".rar" & pause & cls & goto Rar
)
echo.
echo Hit any key to continue ....
pause>nul
:Main
cls
rem ******************  MAIN CODE SECTION
set STARTTIME=!TIME!
mode con cols=60 lines=15
set strProgramFiles=%ProgramFiles%
if exist "%ProgramFiles(x86)%" set strProgramFiles=%ProgramFiles(x86)%
Set Unrar="%strProgramFiles%\WinRAR\UnRar.exe"
SET PSWD=0
SET DEST=%TEMP%\Hackoo\%RANDOM%
MD %DEST%

:START
cls
color 0A
SET /A PSWD=%PSWD%+1
echo.
echo     0 1 0 %random% 1 1 0 0 1 0 0 1 %random% 1 0 1 0 0 1%random%
echo     1%random% 0 0 1 0 1 1 1 1 0 0 1 0 0 1 1 1 1 0 0 0 %random%
echo     1 1 1 1 1 0 1 1 0 0 %random% 1 1 0 1 0 1 0 0 0 1 1 %random%
echo     0 %random% 0 1 1 1 1 1 0 1 0 1 0 1 %random% 0 0 0 0 0 %random%  
echo.
echo  **********************************************************
echo    Please wait a while... Trying to crack the password... 
echo              current tested password = %PSWD%
echo  **********************************************************
echo.  
echo     0 1 0 %random% 1 1 0 0 1 0 0 1 %random% 1 0 1 0 0 1 %random%
echo     1%random% 0 0 1 0 1 1 1 1 0 0 1 0 0 1 1 1 1 0 0 0 %random%
echo     1 1 1 1 1 0 1 1 0 0 %random% 1 1 0 1 0 1 0 0 0 1 1 %random%
echo     0 %random% 0 1 1 1 1 1 0 1 0 1 0 1 %random% 0 0 0 0 0 %random%
%UNRAR% E -inul -y -P%PSWD% "%file%" "%DEST%">nul 2>&1
IF "%ERRORLEVEL%" EQU "0" GOTO :FINISH
GOTO START
:FINISH
mode con cols=60 lines=15
RD %DEST% /Q /S
cls
echo        ----------------------------------------------
echo                           CRACKED
echo        ----------------------------------------------
echo.
echo PASSWORD FOUND
echo FILE  = "%file%"
echo CRACKED PASSWORD = %PSWD%
set ENDTIME=!TIME!
call :GetDuration !STARTTIME! !ENDTIME!
exit /b
rem ******************  END MAIN CODE SECTION

:GetDuration
set function_starttime=%1
set function_endtime=%2

rem Change formatting for the start and end times
for /F "tokens=1-4 delims=:.," %%a in ("%function_starttime%") do (
   set /A "start=(((%%a*60)+1%%b %% 100)*60+1%%c %% 100)*100+1%%d %% 100"
)

for /F "tokens=1-4 delims=:.," %%a in ("%function_endtime%") do (
   set /A "end=(((%%a*60)+1%%b %% 100)*60+1%%c %% 100)*100+1%%d %% 100"
)

rem Calculate the elapsed time by subtracting values
set /A elapsed=end-start

rem Format the results for output
set /A hh=elapsed/(60*60*100), rest=elapsed%%(60*60*100), mm=rest/(60*100), rest%%=60*100, ss=rest/100, cc=rest%%100
if %hh% lss 10 set hh=0%hh%
if %mm% lss 10 set mm=0%mm%
if %ss% lss 10 set ss=0%ss%
if %cc% lss 10 set cc=0%cc%

set DURATION=%hh%:%mm%:%ss%.%cc%

echo Start Time   : %function_starttime%
echo Finish Time  : %function_endtime%
echo          ---------------
echo Duration : %DURATION%
echo.
pause>nul
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何批量添加过滤器到文件选择器? 的相关文章

  • 从 php 到 JavaScript 的数组

    我正在尝试使用 json 将数组列表从 php 传输到 javascript 但它不起作用 JS ajax url getProfilePhotos php type post post or get method data if you
  • Crypto-Js 库的 hmac-256 脚本返回函数结构而不是 Google Apps 脚本中的值,在外部工作正常吗?

    我正在设置一个谷歌电子表格项目来连接到我的 CryptoExchange API 但是当涉及到这个简单的 CryptoJs Hmac sha256 脚本时 它不起作用 它返回函数结构而不是值 而在外部它工作正常 看我的jsfiddle ht
  • 我可以动态创建/销毁 Vue 组件吗?

    因此 我正在创建一个相当复杂的 Vue 应用程序 它从后端 API 获取数据并将其显示在前端 具体取决于用户选择的过滤器 它的默认设置是立即显示所有内容 然后一旦用户选择过滤器 它就会拉出不具有这些属性的 卡片 组件 直到今天 一切都很顺利
  • 如何使用 JavaScript 选择预节点/块中的文本?

    我了解不允许 JS 将任意文本复制到剪贴板背后的安全原因 但是是否有一种方法可以通过单击按钮来选择预节点中的文本 类似于 select 函数在输入中的工作方式 我不是在寻找复制到剪贴板的 jQuery 插件 我只想突出显示预块中的文本 以便
  • 实现悬停信息框

    我有一个日历 当用户将鼠标悬停在单元格上时 会出现一个很大的信息框 其中包含该日期的详细信息 虽然当用户离开时使信息框消失 但我遇到了一些麻烦 我基本上想要它 这样当鼠标光标移出信息框隐藏的日历单元格时 它就会消失 但我遇到了麻烦 因为mo
  • Javascript 在另一个函数中检测“Shift”键按下

    我正在从 Flash 影片 使用外部接口 调用我的 html 页面中的 Javascript 函数 并且我想知道调用该函数时用户是否按下了 Shift 键 例如 如果我通过鼠标单击调用该函数 这似乎很简单 因为我可以传递事件并检查 if e
  • Sequelize - 使用 es6 和模块运行迁移

    我不确定我是否做错了什么或者什么 我觉得我正在运行一个现代的 相当常见的堆栈 但我无法让新的 Sequelize v6 与我的设置完美配合 我在 Node v14 17 Sequelize v6 6 2 上 在我的 package json
  • 在 setInterval / setTimeout 中使用变量作为时间[重复]

    这个问题在这里已经有答案了 这是一个示例情况 var count time 1000 setInterval function count 1 time 上面的代码会将 count 变量加 1 即 1000 毫秒 看来 setInterva
  • 如何使用批处理文件复制(和增量)文件的多个实例

    我需要创建一个批处理文件来复制文件并在将其放置到目的地时递增它 例子 copy C TEMP MyDoc txt E MyData 本质上 我需要这个复制命令在每次启动时进行复制 现在效果很好 我希望它增加文件名而不是覆盖它 如果我运行此命
  • 如何使用 jQuery Ajax 将 PHP 数组值传递到另一个文件?

    这是我的代码
  • html canvas动画卡顿

    谁能解释为什么提供的画布动画断断续续 我创建了一个测试存根来演示该问题 我在桌面上的 FF Chrome IE 以及 Android 上的 FF 和 Chrome 中看到了卡顿现象 口吃是由于垃圾收集造成的吗 似乎 raf 在每次调用时都会
  • “|”是什么意思(单管道)在 JavaScript 中做什么?

    console log 0 5 0 0 console log 1 0 1 console log 1 0 1 为什么0 5 0返回零 但任何整数 包括负数 都返回输入整数 单管道 有什么作用 这是一个按位或 https developer
  • ReactCSSTransitionGroup 组件WillLeave 未调用

    我尝试使用 ReactCssTransition 但不知何故该事件没有被调用 componentWillLeave 这是我的组件 import React Component from react import TransitionGrou
  • Firebase 身份验证在 iOS 登录时卡住,没有错误

    我已经使用电子邮件和密码设置了 firebase 身份验证登录的最基本实现 firebase auth signInWithEmailAndPassword email password then gt console log Logged
  • 如何捕获未发送到 stdout 的命令行文本?

    我在项目中使用 LAME 命令行 mp3 编码器 我希望能够看到某人正在使用什么版本 如果我只执行 LAME exe 而不带参数 我会得到 例如 C LAME gt LAME exe LAME 32 bits version 3 98 2
  • 如何知道浏览器空闲时间?

    如何跟踪浏览器空闲时间 我用的是IE8 我没有使用任何会话管理 也不想在服务器端处理它 这是纯 JavaScript 方法来跟踪空闲时间 并在达到一定限制时执行一些操作 var IDLE TIMEOUT 60 seconds var idl
  • JavaScript Promise 不执行 .then()

    我在 JavaScript 中的 Promise 方面遇到了一些问题 我想做的是获得一个地址列表 然后对于每个地址 我需要调用地理编码 API 来获取 lat lng 然后我将继续将标记与热图一起绘制 这是我的代码 let promiseK
  • JavaScript 提升解释

    下面的片段有什么区别 var a 0 function b a 10 return function a b console log a gt 10 and var a 0 function b a 10 return function a
  • Javascript onload 不起作用[关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 我正在使用
  • DOM 解析器 Chrome 扩展内存泄漏

    问题 我开发了一个扩展程序 可以拦截 Web 请求 获取 Web 请求来源的 HTML 并对其进行处理 我使用 DOMParser 来解析 HTML 并且意识到 DOMParser 正在导致大量内存泄漏问题 最终导致 chrome 扩展崩溃

随机推荐

  • Flex 中的自动化测试

    我想自动化测试 Flex 应用程序 我听说 Flex 提供了可以帮助您自动化测试的类 但我不知道在哪里可以找到它们以及如何使用它们 有人可以帮助我解决这个问题吗 任何提示或建议将不胜感激 是的 这就是所谓的功能测试 Adobe 为 UI 组
  • Prism 7 DI 中的 Register、RegisterInstance 与 RegisterSingleton

    我正在尝试在 Prism 7 中注册 DI 服务 我发现以下所有方法都有效 哪一个是正确的方法 各自的情况如何 public class AndroidInitializer IPlatformInitializer static Open
  • 使用 JavaScript 防止表单提交重定向/刷新

    我有一个页面 您可以在一系列文本框 从 php 生成 中输入数据 以及 2 个按钮 GetData 和 SaveData 我希望能够在编辑文本框时按 Enter 键 并且它将执行与单击 SaveData 按钮 onclick onSave
  • 如何将 Google 云端硬盘文件选择器与 Apps 脚本 HTML 服务结合使用

    有谁有使用示例Google 云端硬盘文件选择器与应用程序脚本HTML服务 有可能吗 我想用它来选择文件或使用 AppsScript HTML 服务从云端硬盘上传文件 不幸的是 由于 Caja 的限制 不可能在 HtmlService 中使用
  • 通过 AJAX 和 jQuery 从 PHP 数组获取数据

    我有一个页面如下
  • Android 设备年龄

    是否可以查询android设备的年龄 我想知道用户拥有他的设备多久 电池的寿命可能是一个很好的指标 但我找不到合适的 API 最佳的是第一次设备启动的时间戳 有任何想法吗 没有可靠的方法来找出设备的年龄 但我们可以通过某种方式找出设备的年龄
  • Android - 从远程服务器加载多个图像的有效方法

    我有一个 Android 应用程序 可以从 php 远程服务器检索数据 图像 文本 并将其显示在 GridView 中 我正在使用 Loaders 在后台进行操作 我对图像和文本有单独的连接 因为检索图像需要更长的时间 而且我想立即显示文本
  • 在 ASP.Net MVC 5 应用程序中使用多个 ASP Identity 2.0

    我有一个带有管理区域的 Web 应用程序 用于管理内容 但该网站的其余部分目前由 ASP Identity 保护 该身份验证我的公共用户 现在我需要对一些内部用户进行身份验证才能访问管理区域 这可能吗 您正在寻找的称为 SSO 单点登录 通
  • 在命令行上使用 Android lint 忽略库项目

    我将 Android lint 与 Jenkins 结合使用 需要忽略我的团队未修改的库项目 特别是 Action Bar Sherlock 以便我们可以从 Android lint 获得有用的结果 目前 我正在从命令行启动 lint 并将
  • 如何从 Google Container Engine 访问 HTTP 请求的客户端 IP?

    我正在使用 Google Container Engine 在 docker 容器中运行 Gunicorn flask 服务 我按照教程设置了集群http kubernetes io docs hellonode The REMOTE AD
  • HttpSessionListener.sessionCreated() 未被调用

    我有一个非常简单的 Servlet 和一个非常简单的 HttpSessionListener WebServlet HelloWorld public class HelloWorld extends HttpServlet private
  • 了解 Scala 中的柯里化

    我在理解柯里化概念或至少是 SCALA 柯里化符号时遇到了问题 维基百科说柯里化是一种将带有多个参数的函数的求值转换为求值一系列函数的技术 每个函数都有一个参数 按照这个解释 接下来的两行对于 scala 来说是一样的吗 def addCu
  • 多图片上传

    我正在制作画廊网站 并且想仅使用 PHP 和 MYSQLI 创建一个多图像上传器 我不太擅长编码 因此该网站上的多图像上传的其他示例对我不起作用 这是根据当前用户会话将数据发送到数据库的工作代码 html
  • 使用准备好的语句从 SQL 表中选择 *

    我正在使用准备好的声明SELECT 来自 MySQL 表 我不知道如何使用while row mysqli fetch array stmt 循环并从结果数组中选择项目 这是我的代码 我做错了什么 link mysqli connect h
  • 在php中捕获搜索引擎关键字

    在 awstats 中 我得到了一个表格 其中包含用于查找我的网站的所有关键词和短语 我想自己捕获这一点 但是每个搜索引擎网址的格式都不同 当 google 是引用者时 我可以使用查询字符串中的变量 q 作为搜索词 例如 google co
  • 美国国旗排序优化

    我正在尝试实现美式桶排序 维基百科说 首先计算每个垃圾箱中掉落的物体数量 然后将每个物体放入其桶中 第二阶段 将对象放入适当的桶中时 是否需要使用辅助数组 有没有办法通过在线性时间内交换数组元素来做到这一点 假设你的意思是http en w
  • 将 pygame 表面转换为图像?

    有没有办法将 pygame 表面转换为 png 图像 rgb content pygame surfarray array2d canvas cv2 imwrite file rgb content cv2 IMWRITE PNG COMP
  • 如何以标准/可移植且高效的方式编写int64=int32*int32? [关闭]

    Closed 这个问题需要细节或清晰度 目前不接受答案 有关的 int64 t 的这种处理是 GCC AND Clang 错误吗 我能想到的唯一解决方案是将操作数之一显式转换为int64 迫使产品也至少int64 但如果这样做的话 那么就取
  • 如何将两个 geoJSON 要素集合添加到两个图层组中

    我有两个 geoJSON 要素集合需要添加到地图中 并且我还希望通过图层可见性控制器打开和关闭它们 如下所示http leafletjs com examples layers control html 我怎样才能做到这一点 还有一个非常好
  • 如何批量添加过滤器到文件选择器?

    我正在使用此代码来创建带有批处理的文件选择器Windows 批处理脚本中的文件 文件夹选择器对话框 echo off set dialog about