initial commit

This commit is contained in:
vec2vec2 2026-09-20 04:10:45 +08:00
commit 4d51544833
73 changed files with 1400 additions and 0 deletions

49
README.md Normal file
View File

@ -0,0 +1,49 @@
# EasyFile v1.4 by [vec2](https://www.vec2.space)
## 使用方法?
**安装**:双击 `install.bat`
---
### 文件夹右键菜单
- `Copy Path /`(正斜杠路径)
- `EasyFile` 子菜单:
- `Copy Path \`(反斜杠)
- `Copy Path \\`(双反斜杠)
- `dir`复制目录树给智障AI看
- `PathAdd` 添加当前文件夹到系统 Path
- `PathDel` 删除
- `PathSee` 查看全部Path
- `Opencmd` 以这个文件夹作为工作目录打开cmd
### 文件夹背景右键菜单
- `Opencmd` 以这个文件夹作为工作目录打开cmd
- `dir`复制目录树给智障AI看
### 自己添加右击菜单?对 .exe/.bat 右键
- `RegisterAdd` 输入扩展名,关联此程序打开
- `RegisterDel` 取消关联的所有扩展名(谨慎)
### 自己改源码
可以自己改那些在src里的cpp然后编译并且放到bin文件夹里--你不会连cpp都不会编译吧--
---
### CMD 快速命令
- `kc` 杀死所有控制台
- `kn` 杀死所有记事本
- ` pl "url" ` 下载url的内容到dowload里
## change log
- 添加Tools\FuckYouWindowsAutoUpdate.bat Tools\W11ClassicMenu Tools\Wub
- 改拷贝bin到 %SystemRoot%\System32\EasyFile
- 添加putty到bin里
- 添加cb自动转换cmd和bat指令
- 添加pl(powerdownload)
- 添加NSudo8.0到bin里
- 引入某个大佬写的便捷工具
- clearshit添加最新QQ
- 添加clearshit清除各种垃圾软件在资源管理器右键菜单里拉的大便
- fix 空格路径拷贝失败
- init

1
Tools/Del.bat Normal file
View File

@ -0,0 +1 @@
del "%~1"

1
Tools/EMacro_clang.bat Normal file
View File

@ -0,0 +1 @@
clang -E -x c++ -P -Wno-error=invalid-token-paste "%~1" > "%~dpn1.pp" 2> "%~dpn1_log.pp"

1
Tools/EMacro_gcc.bat Normal file
View File

@ -0,0 +1 @@
clang -E -x c++ -P -Wno-error=invalid-token-paste "%~1" > "%~dpn1.pp" 2> "%~dpn1_log.pp"

1
Tools/EMacro_mscv.bat Normal file
View File

@ -0,0 +1 @@
gcc -E -x c++ -P "%~1" > "%~dpn1.pp" 2> "%~dpn1_log.pp"

0
Tools/EMarcoCopy_gcc.bat Normal file
View File

View File

@ -0,0 +1 @@
taskkill /F /IM DoubaoWork.exe /T

5
Tools/FuckYouPixPin.bat Normal file
View File

@ -0,0 +1,5 @@
net session >nul 2>&1 || (powershell start-process '%~f0' -verb runas & exit /b)
:loop
taskkill /F /IM PixPin.exe
timeout /T 1 /NOBREAK
goto loop

20
Tools/FuckYouShits.bat Normal file
View File

@ -0,0 +1,20 @@
net session >nul 2>&1 || (powershell start-process '%~f0' -verb runas & exit /b)
:loop
taskkill /F /IM ToDesk.exe
taskkill /F /IM AweSun.exe
taskkill /F /IM AicWifiService.exe
taskkill /F /IM LCore.exe
taskkill /F /IM ms-teams.exe
taskkill /F /IM RadeonSoftware.exe
taskkill /F /IM "NVIDIA App.exe"
taskkill /F /IM "NVIDIA Overlay.exe"
taskkill /F /IM "NVDisplay.Container.exe"
taskkill /F /IM "nvcontainer.exe"
taskkill /F /IM "nvsphelper64.exe"
taskkill /F /IM "FvContainer.System.exe"
taskkill /F /IM "FvContainer.exe"
taskkill /F /IM "nvrla.exe"
taskkill /F /IM "nvfvsdksvc_x64.exe"
taskkill /F /IM "NvOAWrapperCache.exe"
timeout /T 1 /NOBREAK
goto loop

View File

@ -0,0 +1,5 @@
reg.exe add "HKCU\Software\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\InprocServer32" /f
reg add "HKCU\Software\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\InprocServer32" /f /ve
reg delete "HKCU\Software\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}" /f >nul 2>&1
reg add "HKCU\Software\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\InprocServer32" /f /ve /d ""
regedit /s "%~dp0FuckYouWin11RightCl.reg"

View File

@ -0,0 +1,5 @@
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\InprocServer32]
@=""
[-HKEY_CURRENT_USER\Software\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}]

View File

@ -0,0 +1 @@
taskkill /f /im explorer.exe & start explorer.exe

View File

@ -0,0 +1,28 @@
net session >nul 2>&1 || (powershell start-process '%~f0' -verb runas & exit /b)
whoami /groups | find "TrustedInstaller" >nul || (NSudoLC -U:T -P:E cmd /c "%~f0" & exit /b)
schtasks /delete /tn "\Microsoft\Windows\WindowsUpdate\RUXIM\PLUGScheduler" /f
echo \Registry\Machine\SYSTEM\CurrentControlSet\Services\wuauserv [1 5] > "%temp%\fk.ini" & echo \Registry\Machine\SYSTEM\CurrentControlSet\Services\WaaSMedicSvc [1 5] >> "%temp%\fk.ini" & regini "%temp%\fk.ini" & reg delete "HKLM\SYSTEM\CurrentControlSet\Services\wuauserv" /v FailureActions /f & reg delete "HKLM\SYSTEM\CurrentControlSet\Services\WaaSMedicSvc" /v FailureActions /f & del "%temp%\fk.ini"
reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU" /v NoAutoUpdate /t REG_DWORD /d 1 /f
reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate" /v SetDisableUXWUAccess /t REG_DWORD /d 1 /f
reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU" /v AutoInstallMinorUpdates /t REG_DWORD /d 0 /f
reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU" /v NoAutoUpdate /t REG_DWORD /d 1 /f
rd /s /q "%SystemRoot%\System32\Tasks\Microsoft\Windows\WindowsUpdate"
reg delete "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Schedule\TaskCache\Tree\Microsoft\Windows\WindowsUpdate" /f
taskkill /f /im UsoClient.exe
taskkill /f /im WaaSMedicAgent.exe
taskkill /f /im SIHClient.exe
taskkill /f /im wuauclt.exe
taskkill /f /im usocoreworker.exe
ren "C:\Windows\System32\UsoClient.exe" UsoClient.exe.bak
ren "C:\Windows\System32\WaaSMedicAgent.exe" WaaSMedicAgent.exe.bak
ren "C:\Windows\System32\SIHClient.exe" SIHClient.exe.bak
ren "C:\Windows\System32\wuauclt.exe" wuauclt.exe.bak
ren "C:\Windows\System32\usocoreworker.exe" usocoreworker.exe.bak
gpupdate /force

View File

@ -0,0 +1,31 @@
Author: BlueLife , Velociraptor
www.sordum.org
############--Windows 11 Classic Context Menu v1.2 --############
(Thursday, 27 July 2023)
1. [ Removed ] - Move the Taskbar to the Top (Under menu) option
2. [ Added ] - Coding improvements have been made
############--Windows 11 Classic Context Menu v1.1 --############
(Thursday, 11 November 2021)
Changelog:
1. [ Added ] - All user support (Choose Menu - Apply to all users)
2. [ Added ] - Language support
3. [ Added ] - Move the Taskbar to the Top (Under menu)
4. [ Added ] - Some code improvements
---------------------------------------------------------------
############--Windows 11 Classic Context Menu v1.0--############
(Friday, 8 October 2021)
Windows 11 Classic Context Menu help users to toggle between Classic (Old) Context menu
and default (new) Windows 11 Right click menu easily.

Binary file not shown.

Binary file not shown.

70
Tools/Wub/VersionInfo.txt Normal file
View File

@ -0,0 +1,70 @@
Produced by : BlueLife § velociraptor
www.sordum.org
########## Windows Update Blocker v1.8 ##################
Release date: Friday, 9 June 2023
1. [FIXED] - Windows update service not found! error. (Auto recreate it)
2. [FIXED] - Sometimes,the update service fails to start
3. [ ADDED ] - /R parameter to repair errors in the Update service.
4. [ ADDED ] - Setting to close specified processes from ini file during the process
5. [ ADDED ] - Windows update troubleshooter shortcut (under the Menu)
6. [ ADDED ] - New methods to prevent overcoming the block of the Windows update service
7. [ ADDED ] - Many updates in coding
########## Windows Update Blocker v1.7 ##################
Release date: Friday, 28 January 2022
1. [FIXED] - Only 25 services can be restricted from the ini file
2. [ ADDED ] - The Task Scheduler section has been rewritten. (determined from ini file)
3. [ ADDED ] - Option to block Process (application) from ini file
4. [ ADDED ] - Some code Improvements
########## Windows Update Blocker v1.6 ##################
Release date: October 19, 2020 Monday
1. [FIXED] - GUI Font and icons are too small
2. [ ADDED ] - Manual option for wuauserv in windows update enable process
3. [ ADDED ] - x64 bit version
4. [ ADDED ] - Some code Improvements
########## Windows Update Blocker v1.5 ##################
Release date: September 3, 2019
1. [ FIXED ] - There is a Windows Update Status Icon in Windows 10 Taskbar Notification Area
2. [ ADDED ] - 250 ms wait time added to check tasks properly.If there is a problem Update blocking process will be repeated
3. [ ADDED ] - Some code improvements
########## Windows Update Blocker v1.4 ##################
Release date: August 21, 2019
1. [ FIXED ] - Windows Update Blocker doesn't disable Update Orchestrator and WaaSMedic task schedules
########## Windows Update Blocker v1.3 ##################
Release date: June 20, 2019
1. [ FIXED ] - Update and Security tab is crashing
2. [ ADDED ] - Windows Update scheduled Task has been disabled in Task Scheduler
########## Windows Update Blocker v1.2 ##################
Release date: April 21, 2019
1. [ ADDED ] - GUI option for services which added to Ini
2. [ FIXED ] - Some Parts of the software recoded (Improved)
########## Windows Update Blocker v1.1 ##################
Release date: May 06, 2018
1. [ ADDED ] - Language support
2. [ ADDED ] - An option to add different services from Ini file. DoSvc sevice attached
3. [ FIXED ] - Some minor BUGS
########## Windows Update Blocker v1.0 ##################
Release date: December 6, 2016
Windows Update Blocker is a freeware that helps you to completely disable or enable Automatic Updates on
your Windows system , with just a click of the button

BIN
Tools/Wub/Wub.exe Normal file

Binary file not shown.

BIN
Tools/Wub/Wub.ini Normal file

Binary file not shown.

BIN
Tools/Wub/Wub_x64.exe Normal file

Binary file not shown.

10
Uninstall.bat Normal file
View File

@ -0,0 +1,10 @@
fltmc >nul 2>&1 || (powershell -Command "Start-Process '%~f0' -Verb RunAs" & exit /b)
RegisterDel PathAdd.exe
RegisterDel PathDel.exe
RegisterDel PathSee.exe
PathDel ./bin
for %%f in ("%~dp0bin\*.*") do @del /f /q "%SystemRoot%\System32\%%~nxf"
regedit /s "%~dp0src\UnEasyFile.reg"
regedit /s "%~dp0src\UnFastRegister.reg"
regedit /s "%~dp0src\QuickSettings\DelQuickSettings.reg"

BIN
bin/NSudoLC.exe Normal file

Binary file not shown.

BIN
bin/NSudoLG.exe Normal file

Binary file not shown.

BIN
bin/PathAdd.exe Normal file

Binary file not shown.

BIN
bin/PathDel.exe Normal file

Binary file not shown.

BIN
bin/PathSee.exe Normal file

Binary file not shown.

BIN
bin/RegisterAdd.exe Normal file

Binary file not shown.

BIN
bin/RegisterDel.exe Normal file

Binary file not shown.

BIN
bin/cb.exe Normal file

Binary file not shown.

BIN
bin/clipex.exe Normal file

Binary file not shown.

BIN
bin/handle.exe Normal file

Binary file not shown.

BIN
bin/handle64.exe Normal file

Binary file not shown.

BIN
bin/handle64a.exe Normal file

Binary file not shown.

1
bin/kc.bat Normal file
View File

@ -0,0 +1 @@
taskkill /im cmd.exe /f

1
bin/kn.bat Normal file
View File

@ -0,0 +1 @@
taskkill /im notepad.exe /f

BIN
bin/pageant.exe Normal file

Binary file not shown.

BIN
bin/pl.exe Normal file

Binary file not shown.

BIN
bin/plink.exe Normal file

Binary file not shown.

BIN
bin/pscp.exe Normal file

Binary file not shown.

BIN
bin/psftp.exe Normal file

Binary file not shown.

BIN
bin/putty.chm Normal file

Binary file not shown.

BIN
bin/putty.exe Normal file

Binary file not shown.

BIN
bin/puttygen.exe Normal file

Binary file not shown.

13
clearshit.bat Normal file
View File

@ -0,0 +1,13 @@
del /f /q /a "D:\Programs\BaiduNetdisk\YunOfficeAddin.dll"
del /f /q /a "D:\Programs\BaiduNetdisk\YunOfficeAddin64.dll"
del /f /q /a "D:\Programs\BaiduNetdisk\YunShellExt.dll"
del /f /q /a "D:\Programs\BaiduNetdisk\YunShellExt64.dll"
del /f /q /a "D:\Programs\BaiduNetdisk\YunShellExtV1.dll"
del /f /q /a "D:\Programs\BaiduNetdisk\YunShellExtV164.dll"
del /f /q /a "D:\Programs\BaiduNetdisk\ShellFolder.dll"
del /f /q /a "D:\Programs\BaiduNetdisk\ShellFolder64.dll"
del /f /q /a "D:\Programs\BaiduNetdisk\ShellFolderDepend.dll"
del /f /q /a "D:\Programs\BaiduNetdisk\ShellFolderDepend64.dll"
del /f /q "%windir%\System32\QQShellExt.dll" "%windir%\System32\QQShellExt64.dll" 2>nul
del /f /q "%windir%\SysWOW64\QQShellExt.dll" "%windir%\SysWOW64\QQShellExt64.dll" 2>nul
@regedit /s "%~dp0src\CLEAR.reg"

11
install.bat Normal file
View File

@ -0,0 +1,11 @@
fltmc >nul 2>&1 || (powershell -Command "Start-Process '%~f0' -Verb RunAs" & exit /b)
mkdir %SystemRoot%\System32\EasyFile
for %%f in ("%~dp0bin\*.*") do @copy /y "%%f" %SystemRoot%\System32\EasyFile\
regedit /s "%~dp0src\EasyFile.reg"
regedit /s "%~dp0src\FastRegister.reg"
regedit /s "%~dp0src\QuickSettings\AddQuickSettings.reg"
RegisterAdd PathAdd.exe dir
RegisterAdd PathDel.exe dir
RegisterAdd PathSee.exe dir
PathAdd %~dp0binPathAdd %SystemRoot%\System32\EasyFile

280
src/CLEAR.reg Normal file
View File

@ -0,0 +1,280 @@
Windows Registry Editor Version 5.00
[-HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace]
[-HKEY_CLASSES_ROOT\CLSID\{09A47860-11B0-4DA5-AFA5-26D86198A780}]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{09A47860-11B0-4DA5-AFA5-26D86198A780}]
[-HKEY_CLASSES_ROOT\*\shellex\ContextMenuHandlers\EPP]
[-HKEY_CLASSES_ROOT\*\shell\YunShellExplorerCommand]
[-HKEY_CLASSES_ROOT\*\shellex\ContextMenuHandlers\ Quark.ContextMenuExt]
[-HKEY_CLASSES_ROOT\*\shellex\ContextMenuHandlers\QuarkAI.ContextMenu]
[-HKEY_CLASSES_ROOT\*\shellex\ContextMenuHandlers\YunShellExt]
[-HKEY_CLASSES_ROOT\.png\ShellEx\ContextMenuHandlers\ Quark.ContextMenuExt]
[-HKEY_CLASSES_ROOT\.png\ShellEx\ContextMenuHandlers\ QuarkCloudDrive.ContextMenuExt]
[-HKEY_CLASSES_ROOT\.jpg\OpenWithList\BaiduNetdisk.open]
[-HKEY_CLASSES_ROOT\.jpg\ShellEx\ContextMenuHandlers\ Quark.ContextMenuExt]
[-HKEY_CLASSES_ROOT\.jpg\ShellEx\ContextMenuHandlers\ QuarkCloudDrive.ContextMenuExt]
[-HKEY_CLASSES_ROOT\.jpeg\OpenWithList\BaiduNetdisk.open]
[-HKEY_CLASSES_ROOT\.jpeg\ShellEx\ContextMenuHandlers\ Quark.ContextMenuExt]
[-HKEY_CLASSES_ROOT\.jpeg\ShellEx\ContextMenuHandlers\ QuarkCloudDrive.ContextMenuExt]
[-HKEY_CLASSES_ROOT\.wav\OpenWithList\BaiduNetdisk.open]
[-HKEY_CLASSES_ROOT\.ogg\OpenWithList\BaiduNetdisk.open]
[-HKEY_CLASSES_ROOT\.ogg\ShellEx\ContextMenuHandlers]
[-HKEY_CLASSES_ROOT\.mp3\OpenWithList\BaiduNetdisk.open]
[-HKEY_CLASSES_ROOT\.mp4\OpenWithList\BaiduNetdisk.open]
[-HKEY_CLASSES_ROOT\.mp3\ShellEx\ContextMenuHandlers]
[-HKEY_CLASSES_ROOT\.mkv\OpenWithList\BaiduNetdisk.open]
[-HKEY_CLASSES_ROOT\.3gp\OpenWithList\BaiduNetdisk.open]
[-HKEY_CLASSES_ROOT\.aac\OpenWithList\BaiduNetdisk.open]
[-HKEY_CLASSES_ROOT\.ac3\OpenWithList\BaiduNetdisk.open]
[-HKEY_CLASSES_ROOT\.aif\OpenWithList\BaiduNetdisk.open]
[-HKEY_CLASSES_ROOT\.amr\OpenWithList\BaiduNetdisk.open]
[-HKEY_CLASSES_ROOT\.ape\OpenWithList\BaiduNetdisk.open]
[-HKEY_CLASSES_ROOT\.avi\OpenWithList\BaiduNetdisk.open]
[-HKEY_CLASSES_ROOT\.flac\OpenWithList\BaiduNetdisk.open]
[-HKEY_CLASSES_ROOT\.flv\OpenWithList\BaiduNetdisk.open]
[-HKEY_CLASSES_ROOT\.jpeg\OpenWithList\BaiduNetdisk.open]
[-HKEY_CLASSES_ROOT\.jpg\OpenWithList\BaiduNetdisk.open]
[-HKEY_CLASSES_ROOT\.m4a\OpenWithList\BaiduNetdisk.open]
[-HKEY_CLASSES_ROOT\.mid\OpenWithList\BaiduNetdisk.open]
[-HKEY_CLASSES_ROOT\.midi\OpenWithList\BaiduNetdisk.open]
[-HKEY_CLASSES_ROOT\.mkv\OpenWithList\BaiduNetdisk.open]
[-HKEY_CLASSES_ROOT\.mov\OpenWithList\BaiduNetdisk.open]
[-HKEY_CLASSES_ROOT\.mp2\OpenWithList\BaiduNetdisk.open]
[-HKEY_CLASSES_ROOT\.mp3\OpenWithList\BaiduNetdisk.open]
[-HKEY_CLASSES_ROOT\.mp4\OpenWithList\BaiduNetdisk.open]
[-HKEY_CLASSES_ROOT\.mpeg\OpenWithList\BaiduNetdisk.open]
[-HKEY_CLASSES_ROOT\.mpega\OpenWithList\BaiduNetdisk.open]
[-HKEY_CLASSES_ROOT\.ogg\OpenWithList\BaiduNetdisk.open]
[-HKEY_CLASSES_ROOT\.pdf\OpenWithList\BaiduNetdisk.open]
[-HKEY_CLASSES_ROOT\.png\OpenWithList\BaiduNetdisk.open]
[-HKEY_CLASSES_ROOT\.ra\OpenWithList\BaiduNetdisk.open]
[-HKEY_CLASSES_ROOT\.ram\OpenWithList\BaiduNetdisk.open]
[-HKEY_CLASSES_ROOT\.wav\OpenWithList\BaiduNetdisk.open]
[-HKEY_CLASSES_ROOT\.webp\OpenWithList\BaiduNetdisk.open]
[-HKEY_CLASSES_ROOT\.wma\OpenWithList\BaiduNetdisk.open]
[-HKEY_CLASSES_ROOT\.wmv\OpenWithList\BaiduNetdisk.open]
[-HKEY_CLASSES_ROOT\Applications\BaiduNetdisk.open]
[-HKEY_CLASSES_ROOT\.aac\ShellEx\ContextMenuHandlers\ Quark.ContextMenuExt]
[-HKEY_CLASSES_ROOT\.aiff\ShellEx\ContextMenuHandlers\ Quark.ContextMenuExt]
[-HKEY_CLASSES_ROOT\.amr\ShellEx\ContextMenuHandlers\ Quark.ContextMenuExt]
[-HKEY_CLASSES_ROOT\.bmp\ShellEx\ContextMenuHandlers\ Quark.ContextMenuExt]
[-HKEY_CLASSES_ROOT\.doc\ShellEx\ContextMenuHandlers\ Quark.ContextMenuExt]
[-HKEY_CLASSES_ROOT\.docx\ShellEx\ContextMenuHandlers\ Quark.ContextMenuExt]
[-HKEY_CLASSES_ROOT\.flac\ShellEx\ContextMenuHandlers\ Quark.ContextMenuExt]
[-HKEY_CLASSES_ROOT\.gif\ShellEx\ContextMenuHandlers\ Quark.ContextMenuExt]
[-HKEY_CLASSES_ROOT\.jpe\ShellEx\ContextMenuHandlers\ Quark.ContextMenuExt]
[-HKEY_CLASSES_ROOT\.jpeg\ShellEx\ContextMenuHandlers\ Quark.ContextMenuExt]
[-HKEY_CLASSES_ROOT\.jpg\ShellEx\ContextMenuHandlers\ Quark.ContextMenuExt]
[-HKEY_CLASSES_ROOT\.m4a\ShellEx\ContextMenuHandlers\ Quark.ContextMenuExt]
[-HKEY_CLASSES_ROOT\.mp3\ShellEx\ContextMenuHandlers\ Quark.ContextMenuExt]
[-HKEY_CLASSES_ROOT\.ogg\ShellEx\ContextMenuHandlers\ Quark.ContextMenuExt]
[-HKEY_CLASSES_ROOT\.pdf\ShellEx\ContextMenuHandlers\ Quark.ContextMenuExt]
[-HKEY_CLASSES_ROOT\.pjpeg\ShellEx\ContextMenuHandlers\ Quark.ContextMenuExt]
[-HKEY_CLASSES_ROOT\.png\ShellEx\ContextMenuHandlers\ Quark.ContextMenuExt]
[-HKEY_CLASSES_ROOT\.ppt\ShellEx\ContextMenuHandlers\ Quark.ContextMenuExt]
[-HKEY_CLASSES_ROOT\.pptx\ShellEx\ContextMenuHandlers\ Quark.ContextMenuExt]
[-HKEY_CLASSES_ROOT\.wav\ShellEx\ContextMenuHandlers\ Quark.ContextMenuExt]
[-HKEY_CLASSES_ROOT\.wma\ShellEx\ContextMenuHandlers\ Quark.ContextMenuExt]
[-HKEY_CLASSES_ROOT\.xls\ShellEx\ContextMenuHandlers\ Quark.ContextMenuExt]
[-HKEY_CLASSES_ROOT\.xlsx\ShellEx\ContextMenuHandlers\ Quark.ContextMenuExt]
[-HKEY_CLASSES_ROOT\.aac\ShellEx\ContextMenuHandlers\ QuarkCloudDrive.ContextMenuExt]
[-HKEY_CLASSES_ROOT\.aiff\ShellEx\ContextMenuHandlers\ QuarkCloudDrive.ContextMenuExt]
[-HKEY_CLASSES_ROOT\.amr\ShellEx\ContextMenuHandlers\ QuarkCloudDrive.ContextMenuExt]
[-HKEY_CLASSES_ROOT\.bmp\ShellEx\ContextMenuHandlers\ QuarkCloudDrive.ContextMenuExt]
[-HKEY_CLASSES_ROOT\.doc\ShellEx\ContextMenuHandlers\ QuarkCloudDrive.ContextMenuExt]
[-HKEY_CLASSES_ROOT\.docx\ShellEx\ContextMenuHandlers\ QuarkCloudDrive.ContextMenuExt]
[-HKEY_CLASSES_ROOT\.flac\ShellEx\ContextMenuHandlers\ QuarkCloudDrive.ContextMenuExt]
[-HKEY_CLASSES_ROOT\.gif\ShellEx\ContextMenuHandlers\ QuarkCloudDrive.ContextMenuExt]
[-HKEY_CLASSES_ROOT\.jpe\ShellEx\ContextMenuHandlers\ QuarkCloudDrive.ContextMenuExt]
[-HKEY_CLASSES_ROOT\.jpeg\ShellEx\ContextMenuHandlers\ QuarkCloudDrive.ContextMenuExt]
[-HKEY_CLASSES_ROOT\.jpg\ShellEx\ContextMenuHandlers\ QuarkCloudDrive.ContextMenuExt]
[-HKEY_CLASSES_ROOT\.m4a\ShellEx\ContextMenuHandlers\ QuarkCloudDrive.ContextMenuExt]
[-HKEY_CLASSES_ROOT\.mp3\ShellEx\ContextMenuHandlers\ QuarkCloudDrive.ContextMenuExt]
[-HKEY_CLASSES_ROOT\.ogg\ShellEx\ContextMenuHandlers\ QuarkCloudDrive.ContextMenuExt]
[-HKEY_CLASSES_ROOT\.pdf\ShellEx\ContextMenuHandlers\ QuarkCloudDrive.ContextMenuExt]
[-HKEY_CLASSES_ROOT\.pjpeg\ShellEx\ContextMenuHandlers\ QuarkCloudDrive.ContextMenuExt]
[-HKEY_CLASSES_ROOT\.png\ShellEx\ContextMenuHandlers\ QuarkCloudDrive.ContextMenuExt]
[-HKEY_CLASSES_ROOT\.ppt\ShellEx\ContextMenuHandlers\ QuarkCloudDrive.ContextMenuExt]
[-HKEY_CLASSES_ROOT\.pptx\ShellEx\ContextMenuHandlers\ QuarkCloudDrive.ContextMenuExt]
[-HKEY_CLASSES_ROOT\.wav\ShellEx\ContextMenuHandlers\ QuarkCloudDrive.ContextMenuExt]
[-HKEY_CLASSES_ROOT\.wma\ShellEx\ContextMenuHandlers\ QuarkCloudDrive.ContextMenuExt]
[-HKEY_CLASSES_ROOT\.xls\ShellEx\ContextMenuHandlers\ QuarkCloudDrive.ContextMenuExt]
[-HKEY_CLASSES_ROOT\.xlsx\ShellEx\ContextMenuHandlers\ QuarkCloudDrive.ContextMenuExt]
[-HKEY_CLASSES_ROOT\CLSID\{18701C81-34AB-498E-8C7F-5D26B9C36732}]
[-HKEY_CLASSES_ROOT\*\shell\123pan]
[-HKEY_CLASSES_ROOT\Directory\shell\YunShellExplorerCommand]
[-HKEY_CLASSES_ROOT\Directory\shellex\ContextMenuHandlers\YunShellExt]
[-HKEY_CLASSES_ROOT\Directory\shellex\ContextMenuHandlers\ Quark.ContextMenuExt]
[-HKEY_CLASSES_ROOT\*\shellex\ContextMenuHandlers\ImaContextMenu]
[-HKEY_CLASSES_ROOT\Directory\shellex\ContextMenuHandlers\ImaContextMenu]
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Shell Extensions\Blocked]
"{CB3D0F55-BC2C-4C1A-85ED-23ED75B5106B}"=""
[-HKEY_CLASSES_ROOT\Directory\shell\123pan]
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]RazerCortex=-
[-HKEY_CLASSES_ROOT\CLSID\{0E270DAA-1BE6-48F2-AC49-7F9B89AAADF3}]
[-HKEY_CLASSES_ROOT\*\shell\123pan]
[-HKEY_CLASSES_ROOT\*\shell\ToDeskSendFile]
[-HKEY_CLASSES_ROOT\Directory\shell\ToDeskSendFile]
[-HKEY_CLASSES_ROOT\AllFilesystemObjects\shellex\ContextMenuHandlers\QQShellExt64]
[-HKEY_CLASSES_ROOT\Folder\shellex\ContextMenuHandlers\QQShellExt64]
[-HKEY_CLASSES_ROOT\lnkfile\shellex\ContextMenuHandlers\QQShellExt64]
[-HKEY_CLASSES_ROOT\AllFilesystemObjects\shellex\ContextMenuHandlers\QQShellExt]
[-HKEY_CLASSES_ROOT\Folder\shellex\ContextMenuHandlers\QQShellExt]
[-HKEY_CLASSES_ROOT\lnkfile\shellex\ContextMenuHandlers\QQShellExt]
[-HKEY_CLASSES_ROOT\AllFilesystemObjects\shellex\ContextMenuHandlers\QQShellExt]
[-HKEY_CLASSES_ROOT\Folder\shellex\ContextMenuHandlers\QQShellExt]
[-HKEY_CLASSES_ROOT\lnkfile\shellex\ContextMenuHandlers\QQShellExt]
[-HKEY_CLASSES_ROOT\*\shellex\ContextMenuHandlers\QQShellExt]
[-HKEY_CLASSES_ROOT\Directory\shellex\ContextMenuHandlers\QQShellExt]
[-HKEY_CLASSES_ROOT\Directory\Background\shellex\ContextMenuHandlers\QQShellExt]
[-HKEY_CLASSES_ROOT\AllFilesystemObjects\shellex\ContextMenuHandlers\QQSendTo]
[-HKEY_CLASSES_ROOT\Folder\shellex\ContextMenuHandlers\QQSendTo]
[-HKEY_CLASSES_ROOT\*\shellex\ContextMenuHandlers\QQSendTo]
[-HKEY_CLASSES_ROOT\Directory\shellex\ContextMenuHandlers\QQSendTo]
[-HKEY_CLASSES_ROOT\*\shellex\ContextMenuHandlers\QQShellExt]
[-HKEY_CLASSES_ROOT\AllFilesystemObjects\shellex\ContextMenuHandlers\QQShellExt]
[-HKEY_CLASSES_ROOT\Folder\shellex\ContextMenuHandlers\QQShellExt]
[-HKEY_CLASSES_ROOT\lnkfile\shellex\ContextMenuHandlers\QQShellExt]
[-HKEY_CLASSES_ROOT\Directory\shellex\ContextMenuHandlers\QQShellExt]
[-HKEY_CLASSES_ROOT\Directory\Background\shellex\ContextMenuHandlers\QQShellExt]
[-HKEY_CLASSES_ROOT\Drive\shellex\ContextMenuHandlers\QQShellExt]
[-HKEY_CLASSES_ROOT\DesktopBackground\shellex\ContextMenuHandlers\QQShellExt]
[-HKEY_CLASSES_ROOT\*\shellex\ContextMenuHandlers\QQShellExt2]
[-HKEY_CLASSES_ROOT\AllFilesystemObjects\shellex\ContextMenuHandlers\QQShellExt2]
[-HKEY_CLASSES_ROOT\Folder\shellex\ContextMenuHandlers\QQShellExt2]
[-HKEY_CLASSES_ROOT\lnkfile\shellex\ContextMenuHandlers\QQShellExt2]
[-HKEY_CLASSES_ROOT\Directory\shellex\ContextMenuHandlers\QQShellExt2]
[-HKEY_CLASSES_ROOT\Directory\Background\shellex\ContextMenuHandlers\QQShellExt2]
[-HKEY_CLASSES_ROOT\Drive\shellex\ContextMenuHandlers\QQShellExt2]
[-HKEY_CLASSES_ROOT\DesktopBackground\shellex\ContextMenuHandlers\QQShellExt2]
[-HKEY_CLASSES_ROOT\*\shellex\ContextMenuHandlers\QQ闪传]
[-HKEY_CLASSES_ROOT\AllFilesystemObjects\shellex\ContextMenuHandlers\QQ闪传]
[-HKEY_CLASSES_ROOT\Folder\shellex\ContextMenuHandlers\QQ闪传]
[-HKEY_CLASSES_ROOT\lnkfile\shellex\ContextMenuHandlers\QQ闪传]
[-HKEY_CLASSES_ROOT\Directory\shellex\ContextMenuHandlers\QQ闪传]
[-HKEY_CLASSES_ROOT\Directory\Background\shellex\ContextMenuHandlers\QQ闪传]
[-HKEY_CLASSES_ROOT\Drive\shellex\ContextMenuHandlers\QQ闪传]
[-HKEY_CLASSES_ROOT\DesktopBackground\shellex\ContextMenuHandlers\QQ闪传]
[-HKEY_CLASSES_ROOT\*\shellex\ContextMenuHandlers\QQTransfer]
[-HKEY_CLASSES_ROOT\AllFilesystemObjects\shellex\ContextMenuHandlers\QQTransfer]
[-HKEY_CLASSES_ROOT\Folder\shellex\ContextMenuHandlers\QQTransfer]
[-HKEY_CLASSES_ROOT\lnkfile\shellex\ContextMenuHandlers\QQTransfer]
[-HKEY_CLASSES_ROOT\Directory\shellex\ContextMenuHandlers\QQTransfer]
[-HKEY_CLASSES_ROOT\Directory\Background\shellex\ContextMenuHandlers\QQTransfer]
[-HKEY_CLASSES_ROOT\Drive\shellex\ContextMenuHandlers\QQTransfer]
[-HKEY_CLASSES_ROOT\DesktopBackground\shellex\ContextMenuHandlers\QQTransfer]
[-HKEY_CLASSES_ROOT\*\shellex\ContextMenuHandlers\QQShellExt]
[-HKEY_CLASSES_ROOT\*\shellex\ContextMenuHandlers\QQShellExt64]
[-HKEY_CLASSES_ROOT\*\shellex\ContextMenuHandlers\QQPCFileMenuExt]
[-HKEY_CLASSES_ROOT\AllFilesystemObjects\shellex\ContextMenuHandlers\QQShellExt]
[-HKEY_CLASSES_ROOT\AllFilesystemObjects\shellex\ContextMenuHandlers\QQShellExt64]
[-HKEY_CLASSES_ROOT\Folder\shellex\ContextMenuHandlers\QQShellExt]
[-HKEY_CLASSES_ROOT\Folder\shellex\ContextMenuHandlers\QQShellExt64]
[-HKEY_CLASSES_ROOT\lnkfile\shellex\ContextMenuHandlers\QQShellExt]
[-HKEY_CLASSES_ROOT\lnkfile\shellex\ContextMenuHandlers\QQShellExt64]
[-HKEY_CLASSES_ROOT\Directory\shellex\ContextMenuHandlers\QQShellExt]
[-HKEY_CLASSES_ROOT\Directory\shellex\ContextMenuHandlers\QQShellExt64]
[-HKEY_CLASSES_ROOT\Directory\Background\shellex\ContextMenuHandlers\QQShellExt]
[-HKEY_CLASSES_ROOT\Directory\Background\shellex\ContextMenuHandlers\QQShellExt64]
[-HKEY_CLASSES_ROOT\Drive\shellex\ContextMenuHandlers\QQShellExt]
[-HKEY_CLASSES_ROOT\Drive\shellex\ContextMenuHandlers\QQShellExt64]
[-HKEY_CLASSES_ROOT\DesktopBackground\shellex\ContextMenuHandlers\QQShellExt]
[-HKEY_CLASSES_ROOT\DesktopBackground\shellex\ContextMenuHandlers\QQShellExt64]
[-HKEY_CLASSES_ROOT\CLSID\{53D2405C-48AB-4C8A-8F59-CE0610F13BBC}]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{53D2405C-48AB-4C8A-8F59-CE0610F13BBC}]
[-HKEY_CLASSES_ROOT\CLSID\{5D639F05-2181-4B58-A850-9F7E5C79D5DE}]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{5D639F05-2181-4B58-A850-9F7E5C79D5DE}]
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Shell Extensions\Blocked]
"{53D2405C-48AB-4C8A-8F59-CE0610F13BBC}"="QQShellExt"
"{5D639F05-2181-4B58-A850-9F7E5C79D5DE}"="QQShellExt64"
[-HKEY_CLASSES_ROOT\AllFilesystemObjects\shellex\ContextMenuHandlers\QQShellExt]
@="{53D2405C-48AB-4C8A-8F59-CE0610F13BBC}"
[-HKEY_CLASSES_ROOT\Folder\shellex\ContextMenuHandlers\QQShellExt]
@="{53D2405C-48AB-4C8A-8F59-CE0610F13BBC}"
[-HKEY_CLASSES_ROOT\lnkfile\shellex\ContextMenuHandlers\QQShellExt]
@="{53D2405C-48AB-4C8A-8F59-CE0610F13BBC}"
[-HKEY_CLASSES_ROOT\AllFilesystemObjects\shellex\ContextMenuHandlers\QQShellExt64]
@="{5D639F05-2181-4B58-A850-9F7E5C79D5DE}"
[-HKEY_CLASSES_ROOT\Folder\shellex\ContextMenuHandlers\QQShellExt64]
@="{5D639F05-2181-4B58-A850-9F7E5C79D5DE}"
[-HKEY_CLASSES_ROOT\lnkfile\shellex\ContextMenuHandlers\QQShellExt64]
@="{5D639F05-2181-4B58-A850-9F7E5C79D5DE}"
[-HKEY_CLASSES_ROOT\AllFilesystemObjects\shellex\ContextMenuHandlers\QQShellExt]
[-HKEY_CLASSES_ROOT\Folder\shellex\ContextMenuHandlers\QQShellExt]
[-HKEY_CLASSES_ROOT\lnkfile\shellex\ContextMenuHandlers\QQShellExt]
[-HKEY_CLASSES_ROOT\AllFilesystemObjects\shellex\ContextMenuHandlers\QQShellExt64]
[-HKEY_CLASSES_ROOT\Folder\shellex\ContextMenuHandlers\QQShellExt64]
[-HKEY_CLASSES_ROOT\lnkfile\shellex\ContextMenuHandlers\QQShellExt64]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AllFilesystemObjects\shellex\ContextMenuHandlers\QQShellExt]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shellex\ContextMenuHandlers\QQShellExt]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Classes\lnkfile\shellex\ContextMenuHandlers\QQShellExt]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AllFilesystemObjects\shellex\ContextMenuHandlers\QQShellExt64]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shellex\ContextMenuHandlers\QQShellExt64]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Classes\lnkfile\shellex\ContextMenuHandlers\QQShellExt64]
[-HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Desktop\NameSpace\{E2E3C5A1-8D8A-4C3B-9F9E-2345D0WNLOAD}]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]
[-]

1
src/CollectAndRun.bat Normal file
View File

@ -0,0 +1 @@
call "%~1" %ARGS%

113
src/EasyFile.reg Normal file
View File

@ -0,0 +1,113 @@
Windows Registry Editor Version 5.00
;EasyFile
; ----- OpenCmd -----
[HKEY_CLASSES_ROOT\Directory\shell\Open_cmd]
@="Open Command Here(&C)"
"icon"="cmd.exe,0"
[HKEY_CLASSES_ROOT\Directory\shell\Open_cmd\command]
@="cmd.exe /k \"cd /d \"%1\"\""
[HKEY_CLASSES_ROOT\Directory\Background\shell\Open_cmd]
@="Open Command Here(&C)"
"icon"="cmd.exe,0"
[HKEY_CLASSES_ROOT\Directory\Background\shell\Open_cmd\command]
@="cmd.exe /k \"cd /d \"%V\"\""
; ----- MakePDF -----
[HKEY_CLASSES_ROOT\*\shell\MakePDF]
@="Make PDF(&P)"
"icon"="C:\\Program Files (x86)\\Microsoft\\Edge\\Application\\msedge.exe,11"
[HKEY_CLASSES_ROOT\*\shell\MakePDF\command]
@="cmd /c cd /d \"%~dp1\" && magick *.* \"MakePDF.pdf\""
[HKEY_CLASSES_ROOT\Directory\shell\MakePDF]
@="Make PDF(&P)"
"icon"="C:\\Program Files (x86)\\Microsoft\\Edge\\Application\\msedge.exe,11"
[HKEY_CLASSES_ROOT\Directory\shell\MakePDF\command]
@="cmd /c cd /d \"%1\" && magick *.* \"MakePDF.pdf\""
; ----- Copy Path / -----
[HKEY_CLASSES_ROOT\*\shell\CopyPathForwardSlash]
@="Copy Path /(&F)"
"icon"="shell32.dll,3"
[HKEY_CLASSES_ROOT\*\shell\CopyPathForwardSlash\command]
@="cmd /v:on /c \"for %%i in (\"%1\") do set p=%%~i & set p=!p:\\=/! & clipex \"!p!\"\""
[HKEY_CLASSES_ROOT\Directory\shell\CopyPathForwardSlash]
@="Copy Path /(&F)"
"icon"="shell32.dll,3"
[HKEY_CLASSES_ROOT\Directory\shell\CopyPathForwardSlash\command]
@="cmd /v:on /c \"for %%i in (\"%1\") do set p=%%~i & set p=!p:\\=/! & clipex \"!p!\"\""
; ----- Path \ -----
[HKEY_CLASSES_ROOT\*\shell\CopyPathBackSlash]
@="Path \\(&B)"
"icon"="shell32.dll,3"
[HKEY_CLASSES_ROOT\*\shell\CopyPathBackSlash\command]
@="clipex \"%1\""
[HKEY_CLASSES_ROOT\Directory\shell\CopyPathBackSlash]
@="Path \\(&B)"
"icon"="shell32.dll,3"
[HKEY_CLASSES_ROOT\Directory\shell\CopyPathBackSlash\command]
@="clipex \"%1\""
; ----- EasyFile 子菜单 -----
[HKEY_CLASSES_ROOT\Directory\shell\EasyFile]
"MUIVerb"="EasyFile(&E)"
"SubCommands"="CopyPathDoubleBackSlash;dir;"
"icon"="shell32.dll,3"
[HKEY_CLASSES_ROOT\*\shell\EasyFile]
"MUIVerb"="EasyFile(&E)"
"SubCommands"="CopyPathDoubleBackSlash;dir;"
"icon"="shell32.dll,3"
; ----- 子命令Path \\ -----
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\CopyPathDoubleBackSlash]
"MUIVerb"="Path \\\\(&D)"
"icon"="shell32.dll,3"
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\CopyPathDoubleBackSlash\command]
@="cmd /v:on /c \"for %%i in (\"%1\") do set p=%%~i & set p=!p:\\=\\\\! & clipex \"!p!\"\""
; ----- 子命令dir -----
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\dir]
"MUIVerb"="Dir(&L)"
"icon"="shell32.dll,5"
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\dir\command]
@="cmd /c dir \"%1\" | clip"
[HKEY_CLASSES_ROOT\Directory\Background\shell\dir]
"MUIVerb"="Dir(&L)"
"icon"="shell32.dll,5"
[HKEY_CLASSES_ROOT\Directory\Background\shell\dir\command]
@="cmd /c dir | clip"
; ----- Path Src -----
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\PathSrc]
"MUIVerb"="Path Src(&S)"
"icon"="shell32.dll,3"
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\PathSrc\command]
@="powershell.exe -command Set-ItemProperty -Path 'HKCU:\\Software\\EasyFile' -Name 'SrcPath' -Value ((Get-Item -LiteralPath '%1').FullName)"
; ----- Path Dst -----
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\PathDst]
"MUIVerb"="Path Dst(&T)"
"icon"="shell32.dll,3"
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\PathDst\command]
@="powershell.exe -NoProfile -ExecutionPolicy Bypass -Command \"& 'C:\\EasyFile\\Source\\Get-RelativePath.ps1' -dst '%1'\""

27
src/FastRegister.reg Normal file
View File

@ -0,0 +1,27 @@
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\batfile\shell\RegisterAdd]
@="RegisterAdd"
"icon"="shell32.dll,3"
[HKEY_CLASSES_ROOT\batfile\shell\RegisterAdd\command]
@="RegisterAdd.exe \"%1\""
[HKEY_CLASSES_ROOT\exefile\shell\RegisterAdd]
@="RegisterAdd"
"icon"="shell32.dll,3"
[HKEY_CLASSES_ROOT\exefile\shell\RegisterAdd\command]
@="RegisterAdd.exe \"%1\""
[HKEY_CLASSES_ROOT\batfile\shell\RegisterDel]
@="RegisterDel"
"icon"="shell32.dll,3"
[HKEY_CLASSES_ROOT\batfile\shell\RegisterDel\command]
@="RegisterDel.exe \"%1\""
[HKEY_CLASSES_ROOT\exefile\shell\RegisterDel]
@="RegisterDel"
"icon"="shell32.dll,3"
[HKEY_CLASSES_ROOT\exefile\shell\RegisterDel\command]
@="RegisterDel.exe \"%1\""

126
src/PathAdd.cpp Normal file
View File

@ -0,0 +1,126 @@
#include <windows.h>
#include <shlwapi.h>
#include <iostream>
#include <string>
#include <vector>
#include <algorithm>
#include <cctype>
#pragma comment(lib, "shlwapi.lib")
static std::string NormalizePath(const std::string& path) {
std::string result = path;
while (result.size() > 1 && (result.back() == '\\' || result.back() == '/'))
result.pop_back();
std::replace(result.begin(), result.end(), '/', '\\');
return result;
}
static std::string ReadUserPath() {
HKEY hKey;
if (RegOpenKeyExA(HKEY_CURRENT_USER, "Environment", 0, KEY_READ, &hKey) != ERROR_SUCCESS)
return "";
DWORD needed = 0;
RegQueryValueExA(hKey, "Path", nullptr, nullptr, nullptr, &needed);
if (needed == 0) { RegCloseKey(hKey); return ""; }
std::string path(needed, '\0');
DWORD type = 0;
DWORD size = needed;
LONG ret = RegQueryValueExA(hKey, "Path", nullptr, &type, (BYTE*)&path[0], &size);
RegCloseKey(hKey);
if (ret != ERROR_SUCCESS) return "";
if (!path.empty() && path.back() == '\0') path.pop_back();
return path;
}
static bool WriteUserPath(const std::string& newPath) {
HKEY hKey;
if (RegOpenKeyExA(HKEY_CURRENT_USER, "Environment", 0, KEY_WRITE, &hKey) != ERROR_SUCCESS)
return false;
DWORD size = (DWORD)newPath.size() + 1;
LONG ret = RegSetValueExA(hKey, "Path", 0, REG_EXPAND_SZ, (const BYTE*)newPath.c_str(), size);
RegCloseKey(hKey);
if (ret != ERROR_SUCCESS) return false;
SendMessageTimeoutA(HWND_BROADCAST, WM_SETTINGCHANGE, 0, (LPARAM)"Environment", SMTO_ABORTIFHUNG, 5000, nullptr);
return true;
}
static std::vector<std::string> SplitPath(const std::string& path) {
std::vector<std::string> items;
size_t start = 0, end;
while ((end = path.find(';', start)) != std::string::npos) {
std::string token = path.substr(start, end - start);
if (!token.empty()) items.push_back(NormalizePath(token));
start = end + 1;
}
if (start < path.size()) {
std::string token = path.substr(start);
if (!token.empty()) items.push_back(NormalizePath(token));
}
return items;
}
static std::string JoinPath(const std::vector<std::string>& items) {
std::string result;
for (size_t i = 0; i < items.size(); ++i) {
if (i) result += ';';
result += items[i];
}
return result;
}
static std::vector<std::string> AddPaths(const std::vector<std::string>& current,
const std::vector<std::string>& toAdd) {
std::vector<std::string> result = current;
for (const auto& add : toAdd) {
bool exists = false;
for (const auto& item : result) {
if (_stricmp(item.c_str(), add.c_str()) == 0) { exists = true; break; }
}
if (!exists) result.push_back(add);
}
return result;
}
int main(int argc, char* argv[]) {
if (argc < 2) {
std::cout << "Usage: PathAdd <path1> [path2 ...]\n";
return 0;
}
std::string oldPath = ReadUserPath();
std::vector<std::string> currentItems = SplitPath(oldPath);
std::vector<std::string> addList;
for (int i = 1; i < argc; ++i) {
char absPath[MAX_PATH];
std::string raw;
if (GetFullPathNameA(argv[i], MAX_PATH, absPath, NULL) != 0)
raw = absPath;
else
raw = argv[i];
std::string norm = NormalizePath(raw);
if (!norm.empty()) addList.push_back(norm);
}
if (addList.empty()) {
std::cout << "No valid paths to add.\n";
return 0;
}
std::vector<std::string> newItems = AddPaths(currentItems, addList);
int added = (int)(newItems.size() - currentItems.size());
if (added == 0) {
std::cout << "All paths already exist, nothing changed.\n";
return 0;
}
std::string newPath = JoinPath(newItems);
if (!WriteUserPath(newPath)) {
std::cerr << "Failed to write to registry.\n";
return 1;
}
std::cout << "Successfully added " << added << " path(s).\n";
return 0;
}

131
src/PathDel.cpp Normal file
View File

@ -0,0 +1,131 @@
#include <windows.h>
#include <shlwapi.h>
#include <iostream>
#include <string>
#include <vector>
#include <algorithm>
#include <cctype>
#pragma comment(lib, "shlwapi.lib")
static std::string NormalizePath(const std::string& path) {
std::string result = path;
while (result.size() > 1 && (result.back() == '\\' || result.back() == '/'))
result.pop_back();
std::replace(result.begin(), result.end(), '/', '\\');
return result;
}
static std::string ReadUserPath() {
HKEY hKey;
if (RegOpenKeyExA(HKEY_CURRENT_USER, "Environment", 0, KEY_READ, &hKey) != ERROR_SUCCESS)
return "";
DWORD needed = 0;
RegQueryValueExA(hKey, "Path", nullptr, nullptr, nullptr, &needed);
if (needed == 0) { RegCloseKey(hKey); return ""; }
std::string path(needed, '\0');
DWORD type = 0;
DWORD size = needed;
LONG ret = RegQueryValueExA(hKey, "Path", nullptr, &type, (BYTE*)&path[0], &size);
RegCloseKey(hKey);
if (ret != ERROR_SUCCESS) return "";
if (!path.empty() && path.back() == '\0') path.pop_back();
return path;
}
static bool WriteUserPath(const std::string& newPath) {
HKEY hKey;
if (RegOpenKeyExA(HKEY_CURRENT_USER, "Environment", 0, KEY_WRITE, &hKey) != ERROR_SUCCESS)
return false;
DWORD size = (DWORD)newPath.size() + 1;
LONG ret = RegSetValueExA(hKey, "Path", 0, REG_EXPAND_SZ, (const BYTE*)newPath.c_str(), size);
RegCloseKey(hKey);
if (ret != ERROR_SUCCESS) return false;
SendMessageTimeoutA(HWND_BROADCAST, WM_SETTINGCHANGE, 0, (LPARAM)"Environment", SMTO_ABORTIFHUNG, 5000, nullptr);
return true;
}
static std::vector<std::string> SplitPath(const std::string& path) {
std::vector<std::string> items;
size_t start = 0, end;
while ((end = path.find(';', start)) != std::string::npos) {
std::string token = path.substr(start, end - start);
if (!token.empty()) items.push_back(NormalizePath(token));
start = end + 1;
}
if (start < path.size()) {
std::string token = path.substr(start);
if (!token.empty()) items.push_back(NormalizePath(token));
}
return items;
}
static std::string JoinPath(const std::vector<std::string>& items) {
std::string result;
for (size_t i = 0; i < items.size(); ++i) {
if (i) result += ';';
result += items[i];
}
return result;
}
static std::vector<std::string> RemovePaths(const std::vector<std::string>& current,
const std::vector<std::string>& toRemove) {
std::vector<std::string> result;
for (const auto& item : current) {
bool found = false;
for (const auto& del : toRemove) {
if (_stricmp(item.c_str(), del.c_str()) == 0) { found = true; break; }
}
if (!found) result.push_back(item);
}
return result;
}
int main(int argc, char* argv[]) {
if (argc < 2) {
std::cout << "Usage: PathDel <path1> [path2 ...]\n";
return 0;
}
std::string oldPath = ReadUserPath();
if (oldPath.empty()) {
std::cerr << "Current Path is empty or read failed, exiting.\n";
return 1;
}
std::vector<std::string> currentItems = SplitPath(oldPath);
std::vector<std::string> delList;
for (int i = 1; i < argc; ++i) {
char absPath[MAX_PATH];
std::string raw;
if (GetFullPathNameA(argv[i], MAX_PATH, absPath, NULL) != 0)
raw = absPath;
else
raw = argv[i];
std::string norm = NormalizePath(raw);
if (!norm.empty()) delList.push_back(norm);
}
if (delList.empty()) {
std::cout << "No valid paths to delete.\n";
return 0;
}
std::vector<std::string> newItems = RemovePaths(currentItems, delList);
int deleted = (int)(currentItems.size() - newItems.size());
if (deleted == 0) {
std::cout << "No matching paths found, nothing changed.\n";
return 0;
}
std::string newPath = JoinPath(newItems);
if (!WriteUserPath(newPath)) {
std::cerr << "Failed to write to registry.\n";
return 1;
}
std::cout << "Successfully removed " << deleted << " path(s).\n";
return 0;
}

15
src/PathSee.cpp Normal file
View File

@ -0,0 +1,15 @@
#include <windows.h>
#include <stdio.h>
int main(){
char p[32767];
GetEnvironmentVariable("PATH",p,sizeof(p));
char*t=strtok(p,";");
while(t){puts(t);t=strtok(NULL,";");}
DWORD pid;
GetWindowThreadProcessId(GetConsoleWindow(), &pid);
if (pid == GetCurrentProcessId())
system("pause");
return 0;
}

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,2 @@
[.ShellClassInfo]
IconResource=C:\Windows\System32\SHELL32.dll,137

83
src/RegisterAdd.cpp Normal file
View File

@ -0,0 +1,83 @@
#include <windows.h>
#include <shellapi.h>
#include <stdio.h>
#include <string.h>
#include <string>
#include <filesystem>
#include <vector>
using namespace std;
bool IsAdmin() {
HANDLE hToken;
if (!OpenProcessToken(GetCurrentProcess(), TOKEN_QUERY, &hToken)) return 0;
TOKEN_ELEVATION te;
DWORD s;
bool r = GetTokenInformation(hToken, TokenElevation, &te, sizeof(te), &s) && te.TokenIsElevated;
CloseHandle(hToken);
return r;
}
void RunAsAdmin() {
char p[MAX_PATH]; GetModuleFileNameA(NULL, p, MAX_PATH);
const char* cmd = GetCommandLineA();
if (*cmd == '\"') { cmd = strchr(cmd + 1, '\"'); if (cmd) cmd++; }
else { cmd = strchr(cmd, ' '); }
while (cmd && *cmd == ' ') cmd++;
ShellExecuteA(NULL, "runas", p, cmd ? cmd : "", NULL, SW_SHOW);
}
void StripPath(char* s) {
char* p = strrchr(s, '\\');
if (!p) p = strrchr(s, '/');
if (p) memmove(s, p+1, strlen(p+1)+1);
}
void RemoveExt(char* s) {
char* p = strrchr(s, '.');
if (p && p > s) *p = 0;
}
int main(int a, char* v[]) {
for(int i=0;i<a;i++)
printf("%s\n",v[i]);
if (!IsAdmin()) { RunAsAdmin(); return 0; }
if (a < 2) return 1;
char f[MAX_PATH]; strcpy(f, v[1]); StripPath(f); RemoveExt(f);
char buf[1024] = {0};
if (a >= 3) {
// 使用命令行第三个参数作为扩展名列表(空格分隔)
strncpy(buf, v[2], sizeof(buf) - 1);
buf[sizeof(buf) - 1] = '\0';
} else {
printf("Enter extensions (space-separated, e.g. .png .jpg or dir):\n> ");
fgets(buf, 1024, stdin);
}
char* p = strtok(buf, " \t\n");
std::vector<const char*> exts;
while(p){ exts.push_back(p); p=strtok(NULL," \t\n"); }
if(exts.empty()) exts.push_back("*");
for(auto e:exts){
char kp[512];
if(strcmp(e,"dir")==0) sprintf(kp,"Directory\\shell\\%s",f);
else sprintf(kp,"%s\\shell\\%s",e,f);
HKEY h; if(
// RegCreateKeyA(HKEY_CLASSES_ROOT,kp,&h)
RegCreateKeyExA(HKEY_CLASSES_ROOT,
kp,
0, NULL, REG_OPTION_NON_VOLATILE,
KEY_WRITE, NULL, &h, NULL)
==0)
{
//这个注释不能删RegSetValueA是创建子key RegSetValueExA才是创建值 不要用RegSetValueA 某些没母傻逼AI认为RegSetValueA能创建值特此注释
RegSetValueA(h, NULL, REG_SZ, f, strlen(f)+1);
std::string ic = std::string(f) + ",0";
RegSetValueExA(h, "icon", 0, REG_SZ,(const BYTE*) ic.c_str(), ic.size()+1);
// RegSetValueA(h, "icon", REG_SZ, "%1", 3);
char cmd[512]; sprintf(cmd,"\"%s\" %%L",v[1]);
RegSetValueA(h,"command",REG_SZ,cmd,strlen(cmd)+1);
RegCloseKey(h);
}
}
return 0;
}

60
src/RegisterDel.cpp Normal file
View File

@ -0,0 +1,60 @@
#include <windows.h>
#include <shlwapi.h>
#include <shellapi.h>
#include <stdio.h>
#include <string.h>
#pragma comment(lib, "shlwapi.lib")
bool IsAdmin() {
HANDLE hToken;
if (!OpenProcessToken(GetCurrentProcess(), TOKEN_QUERY, &hToken)) return 0;
TOKEN_ELEVATION te;
DWORD s;
bool r = GetTokenInformation(hToken, TokenElevation, &te, sizeof(te), &s) && te.TokenIsElevated;
CloseHandle(hToken);
return r;
}
void RunAsAdmin() {
char p[MAX_PATH]; GetModuleFileNameA(NULL, p, MAX_PATH);
const char* cmd = GetCommandLineA();
if (*cmd == '\"') { cmd = strchr(cmd + 1, '\"'); if (cmd) cmd++; }
else { cmd = strchr(cmd, ' '); }
while (cmd && *cmd == ' ') cmd++;
ShellExecuteA(NULL, "runas", p, cmd ? cmd : "", NULL, SW_SHOW);
}
void StripPath(char* s) {
char* p = strrchr(s, '\\');
if (!p) p = strrchr(s, '/');
if (p) memmove(s, p+1, strlen(p+1)+1);
}
void RemoveExt(char* s) {
char* p = strrchr(s, '.');
if (p && p > s) *p = 0;
}
int main(int a, char* v[]) {
if (!IsAdmin()) { RunAsAdmin(); return 0; }
if (a < 2) return 1;
char f[MAX_PATH]; strcpy(f, v[1]); StripPath(f); RemoveExt(f);
printf("Deleting associations for '%s'...\n", f);
char sub[256];
DWORD idx = 0;
while (RegEnumKeyA(HKEY_CLASSES_ROOT, idx, sub, 256) == 0) {
// 检查 .xxx、Directory、* 等可能存放右键菜单的顶级键
if (sub[0] == '.' || strcmp(sub, "Directory") == 0 || strcmp(sub, "*") == 0) {
char path[512];
sprintf(path, "%s\\shell\\%s", sub, f);
HKEY hTest;
if (RegOpenKeyA(HKEY_CLASSES_ROOT, path, &hTest) == 0) {
RegCloseKey(hTest);
if (RegDeleteTreeA(HKEY_CLASSES_ROOT, path) == ERROR_SUCCESS) {
printf("Deleted: %s\n", path);
} else {
printf("Failed to delete: %s\n", path);
}
}
}
idx++;
}
printf("Done. Please restart Explorer or logoff/on to refresh menus.\n");
return 0;
}

24
src/UnEasyFile.reg Normal file
View File

@ -0,0 +1,24 @@
Windows Registry Editor Version 5.00
[-HKEY_CLASSES_ROOT\Directory\shell\Open_cmd]
[-HKEY_CLASSES_ROOT\Directory\Background\shell\Open_cmd]
[-HKEY_CLASSES_ROOT\*\shell\MakePDF]
[-HKEY_CLASSES_ROOT\Directory\shell\MakePDF]
[-HKEY_CLASSES_ROOT\Directory\Background\shell\dir]
[-HKEY_CLASSES_ROOT\Directory\Background\shell\dir\command]
; 删除最外层的 CopyPathForwardSlash正斜杠
[-HKEY_CLASSES_ROOT\*\shell\CopyPathForwardSlash]
[-HKEY_CLASSES_ROOT\Directory\shell\CopyPathForwardSlash]
; 删除子菜单 EasyFile
[-HKEY_CLASSES_ROOT\Directory\shell\EasyFile]
[-HKEY_CLASSES_ROOT\*\shell\EasyFile]
; 删除子命令
[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\CopyPathBackSlash]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\CopyPathDoubleBackSlash]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\dir]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\PathSrc]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\PathDst]

9
src/UnFastRegister.reg Normal file
View File

@ -0,0 +1,9 @@
Windows Registry Editor Version 5.00
[-HKEY_CLASSES_ROOT\batfile\shell\RegisterAdd]
[-HKEY_CLASSES_ROOT\exefile\shell\RegisterAdd]
[-HKEY_CLASSES_ROOT\batfile\shell\RegisterDel]
[-HKEY_CLASSES_ROOT\exefile\shell\RegisterDel]

2
src/clipex.cpp Normal file
View File

@ -0,0 +1,2 @@
#include <windows.h>
int main(int argc,char**argv){if(argc<2)return 1;OpenClipboard(0);EmptyClipboard();HGLOBAL m=GlobalAlloc(0,strlen(argv[1])+1);strcpy((char*)GlobalLock(m),argv[1]);GlobalUnlock(m);SetClipboardData(CF_TEXT,m);CloseClipboard();return 0;}

1
src/getadmin.bat Normal file
View File

@ -0,0 +1 @@
@fltmc >nul 2>&1 || (powershell -Command "Start-Process '%~f0' -Verb RunAs" & exit /b)

188
src/pl.cpp Normal file
View File

@ -0,0 +1,188 @@
// pd.cpp ¡ª ±àÒë: g++ -std=c++14 pd.cpp -o pd.exe
#include <windows.h>
#include <cstdlib>
#include <cstdio>
#include <cctype>
#include <iostream>
#include <string>
#include <vector>
using namespace std;
string pctDecode(const string& s) {
string r;
for (size_t i = 0; i < s.size(); i++) {
if (s[i] == '%' && i + 2 < s.size() &&
isxdigit((unsigned char)s[i+1]) && isxdigit((unsigned char)s[i+2])) {
r += (char)strtol(s.substr(i+1, 2).c_str(), 0, 16); i += 2;
} else if (s[i] == '+') r += ' ';
else r += s[i];
}
return r;
}
string filenameFromQuery(const string& q) {
string d = pctDecode(q);
size_t p = 0;
while ((p = d.find("filename=", p)) != string::npos) {
size_t s = p + 9, e = d.find_first_of("&;", s);
string f = d.substr(s, e == string::npos ? string::npos : e - s);
if (!f.empty() && f.front() == '"') f.erase(0, 1);
if (!f.empty() && f.back() == '"') f.pop_back();
if (!f.empty()) return f;
p = s;
}
return "";
}
string psQuote(const string& s) {
string r;
for (char c : s) { r += c; if (c == '\'') r += '\''; }
return r;
}
bool fileSize(const string& path, long long& size) {
WIN32_FILE_ATTRIBUTE_DATA d;
if (!GetFileAttributesExA(path.c_str(), GetFileExInfoStandard, &d)) return false;
if (d.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) return false;
size = ((long long)d.nFileSizeHigh << 32) | d.nFileSizeLow;
return true;
}
string detectProxy() {
const char* envs[] = {"HTTPS_PROXY","https_proxy","HTTP_PROXY","http_proxy","ALL_PROXY","all_proxy"};
for (auto n : envs) { const char* e = getenv(n); if (e && *e) return e; }
HKEY k;
if (RegOpenKeyExA(HKEY_CURRENT_USER,
"Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings",
0, KEY_READ, &k) != ERROR_SUCCESS) return "";
DWORD enable = 0, sz = sizeof(enable), type = 0;
if (RegQueryValueExA(k, "ProxyEnable", 0, &type, (BYTE*)&enable, &sz) != ERROR_SUCCESS ||
!enable) { RegCloseKey(k); return ""; }
char buf[1024] = {0}; sz = sizeof(buf);
RegQueryValueExA(k, "ProxyServer", 0, &type, (BYTE*)buf, &sz);
RegCloseKey(k);
string p = buf;
if (p.find('=') != string::npos) {
string http, https; size_t i = 0;
while (i < p.size()) {
size_t e = p.find(';', i);
string seg = p.substr(i, e == string::npos ? string::npos : e - i);
size_t eq = seg.find('=');
if (eq != string::npos) {
string kk = seg.substr(0, eq), vv = seg.substr(eq + 1);
if (kk == "https") https = vv;
else if (kk == "http") http = vv;
}
if (e == string::npos) break;
i = e + 1;
}
p = !https.empty() ? https : http;
}
return p;
}
long long remoteSize(const string& url, const string& proxy) {
string px = proxy.empty() ? "" : "-x \"" + proxy + "\" ";
string cmd = "curl -sIL -A \"Mozilla/5.0\" " + px + "\"" + url + "\" 2>nul";
FILE* f = _popen(cmd.c_str(), "r");
if (!f) return -1;
char buf[4096]; long long size = -1;
while (fgets(buf, sizeof buf, f)) {
string low(buf);
for (auto& ch : low) ch = (char)tolower((unsigned char)ch);
if (low.compare(0, 15, "content-length:") == 0) {
long long v = atoll(buf + 15);
if (v > 0) size = v;
}
}
_pclose(f);
return size;
}
int run(const string& cmd) {
vector<char> buf(cmd.begin(), cmd.end()); buf.push_back(0);
STARTUPINFOA si = {sizeof(si)}; PROCESS_INFORMATION pi = {0};
if (!CreateProcessA(0, buf.data(), 0, 0, TRUE, 0, 0, 0, &si, &pi)) return -1;
WaitForSingleObject(pi.hProcess, INFINITE);
DWORD code = 1; GetExitCodeProcess(pi.hProcess, &code);
CloseHandle(pi.hProcess); CloseHandle(pi.hThread);
return (int)code;
}
int main(int c, char** v) {
SetConsoleOutputCP(65001);
string raw = c > 1 ? v[1] : "";
if (raw.empty()) { cout << "URL: "; getline(cin, raw); }
if (raw.find("://") == string::npos) raw = "https://" + raw;
string base = raw, query;
size_t h = base.find('#');
if (h != string::npos) base = base.substr(0, h);
size_t q = base.find('?');
if (q != string::npos) { query = base.substr(q + 1); base = base.substr(0, q); }
string name = filenameFromQuery(query);
if (name.empty()) {
string p = base;
while (!p.empty() && p.back() == '/') p.pop_back();
size_t s = p.find_last_of('/');
name = pctDecode(s == string::npos ? p : p.substr(s + 1));
}
if (name.empty()) name = "download.bin";
string out = string(getenv("USERPROFILE")) + "\\Downloads\\" + name;
CreateDirectoryA(out.substr(0, out.find_last_of('\\')).c_str(), 0);
string proxy = detectProxy();
cout << "Proxy: " << (proxy.empty() ? "(none)" : proxy) << endl;
long long local = 0, remote = -1;
bool exist = fileSize(out, local);
if (exist) remote = remoteSize(raw, proxy);
if (exist && remote > 0 && local == remote) {
cout << "Already complete (" << local << " bytes): " << out << endl;
return 0;
}
if (exist && remote > 0 && local > remote) {
cout << "Local > remote, restarting." << endl;
DeleteFileA(out.c_str()); exist = false; local = 0;
}
string pxArg = proxy.empty() ? "" : "-x \"" + proxy + "\" ";
string resumeArg = exist ? "-C - " : "";
string cmd = "curl -L --fail --retry 3 --retry-delay 2 -A \"Mozilla/5.0\" " +
pxArg + resumeArg + "-o \"" + out + "\" \"" + raw + "\"";
cout << "$ " << cmd << endl;
cout << "File: " << name << endl;
if (exist) cout << "Resume " << local << " / "
<< (remote > 0 ? to_string(remote) : string("?")) << " bytes" << endl;
int rc = run(cmd);
if (rc == -1 || rc == 9009) {
string psProxy = proxy.empty() ? "" : "$a.Proxy='" + psQuote(proxy) + "';";
string ps =
"[Net.ServicePointManager]::SecurityProtocol='Tls12,Tls13';"
"$f='" + psQuote(out) + "';"
"$a=@{Uri='" + psQuote(raw) + "';UseBasicParsing=$true;UserAgent='Mozilla/5.0'};"
+ psProxy +
"$n=0; if(Test-Path -LiteralPath $f){$n=(Get-Item -LiteralPath $f).Length};"
"if($n -gt 0){"
" $a.Headers=@{Range=\"bytes=$n-\"};"
" $part=$f+'.part'; if(Test-Path -LiteralPath $part){Remove-Item $part -Force};"
" Invoke-WebRequest @a -OutFile $part;"
" $fs=[IO.File]::Open($f,'Append'); $rs=[IO.File]::OpenRead($part);"
" $rs.CopyTo($fs); $rs.Close(); $fs.Close(); Remove-Item $part -Force;"
"} else { Invoke-WebRequest @a -OutFile $f }";
cmd = "powershell.exe -NoProfile -ExecutionPolicy Bypass -Command \"" + ps + "\"";
cout << "$ " << cmd << endl;
rc = run(cmd);
}
if (rc) { cerr << "Download failed (exit " << rc << ")." << endl; return 2; }
cout << "Done." << endl;
}

View File

@ -0,0 +1,34 @@
@echo off
if "%1"=="h" goto begin
start mshta vbscript:createobject("wscript.shell").run("""%~nx0"" h",0)(window.close)&&exit
:begin
REG ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkList\DefaultMediaCost" /v "3G" /t REG_DWORD /d "00000001" /f
REG ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkList\DefaultMediaCost" /v "4G" /t REG_DWORD /d "00000001" /f
REG ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkList\DefaultMediaCost" /v "Default" /t REG_DWORD /d "00000002" /f
REG ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkList\DefaultMediaCost" /v "Ethernet" /t REG_DWORD /d "00000002" /f
REG ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkList\DefaultMediaCost" /v "WiFi" /t REG_DWORD /d "00000002" /f
REG ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\DriverSearching" /v "SearchOrderConfig" /t REG_DWORD /d 0 /f
REG ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate" /v "ExcludeWUDriversInQualityUpdate" /t REG_DWORD /d 1 /f
REG ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Device Metadata" /v "PreventDeviceMetadataFromNetwork" /t REG_DWORD /d 1 /f
REG ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PolicyManager\current\device\Update" /v "ExcludeWUDriversInQualityUpdate" /t REG_DWORD /d 1 /f
REG ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PolicyManager\default\Update" /v "ExcludeWUDriversInQualityUpdate" /t REG_DWORD /d 1 /f
REG ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PolicyManager\default\Update\ExcludeWUDriversInQualityUpdate" /v "value" /t REG_DWORD /d 1 /f
REG ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsUpdate\UX\Settings" /v "ExcludeWUDriversInQualityUpdate" /t REG_DWORD /d 1 /f
REG ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate" /v "ExcludeWUDriversInQualityUpdate" /t REG_DWORD /d 1 /f
REG ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsUpdate\UpdatePolicy\PolicyState" /v "ExcludeWUDrivers" /t REG_DWORD /d 1 /f
RD /S/ Q %SystemRoot%\SoftwareDistribution
net stop wuauserv
setlocal enabledelayedexpansion
set Vbscript=Msgbox("是否重启系统? [ 重启生效配置 ]",1,"系统提醒:驱动检测已停止")
for /f "Delims=" %%a in ('MsHta VBScript:Execute("CreateObject(""Scripting.Filesystemobject"").GetStandardStream(1).Write(%Vbscript:"=""%)"^)(Close^)') do Set "MsHtaReturnValue=%%a"
set ReturnValue1=确定重启
set ReturnValue2=取消重启
echo 你点击了!ReturnValue%MsHtaReturnValue%!
if %MsHtaReturnValue% == 1 (
echo 重启
shutdown /r /t 1 /f
) else (
echo 取消
)
exit
pause

View File

@ -0,0 +1,34 @@
@echo off
if "%1"=="h" goto begin
start mshta vbscript:createobject("wscript.shell").run("""%~nx0"" h",0)(window.close)&&exit
:begin
RD /S/ Q %SystemRoot%\SoftwareDistribution
REG ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkList\DefaultMediaCost" /v "3G" /t REG_DWORD /d "00000002" /f
REG ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkList\DefaultMediaCost" /v "4G" /t REG_DWORD /d "00000002" /f
REG ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkList\DefaultMediaCost" /v "Default" /t REG_DWORD /d "00000001" /f
REG ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkList\DefaultMediaCost" /v "Ethernet" /t REG_DWORD /d "00000001" /f
REG ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkList\DefaultMediaCost" /v "WiFi" /t REG_DWORD /d "00000001" /f
REG ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\DriverSearching" /v "SearchOrderConfig" /t REG_DWORD /d 1 /f
REG ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate" /v "ExcludeWUDriversInQualityUpdate" /t REG_DWORD /d 0 /f
REG ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Device Metadata" /v "PreventDeviceMetadataFromNetwork" /t REG_DWORD /d 0 /f
REG ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PolicyManager\current\device\Update" /v "ExcludeWUDriversInQualityUpdate" /t REG_DWORD /d 0 /f
REG ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PolicyManager\default\Update" /v "ExcludeWUDriversInQualityUpdate" /t REG_DWORD /d 0 /f
REG ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PolicyManager\default\Update\ExcludeWUDriversInQualityUpdate" /v "value" /t REG_DWORD /d 0 /f
REG ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsUpdate\UX\Settings" /v "ExcludeWUDriversInQualityUpdate" /t REG_DWORD /d 0 /f
REG ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate" /v "ExcludeWUDriversInQualityUpdate" /t REG_DWORD /d 0 /f
REG ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsUpdate\UpdatePolicy\PolicyState" /v "ExcludeWUDrivers" /t REG_DWORD /d 0 /f
net start wuauserv
setlocal enabledelayedexpansion
set Vbscript=Msgbox("是否重启系统? [ 重启生效配置 ]",1,"系统提醒:驱动检测已开启")
for /f "Delims=" %%a in ('MsHta VBScript:Execute("CreateObject(""Scripting.Filesystemobject"").GetStandardStream(1).Write(%Vbscript:"=""%)"^)(Close^)') do Set "MsHtaReturnValue=%%a"
set ReturnValue1=确定重启
set ReturnValue2=取消重启
echo 你点击了!ReturnValue%MsHtaReturnValue%!
if %MsHtaReturnValue% == 1 (
echo 重启
shutdown /r /t 1 /f
) else (
echo 取消
)
exit
pause

Binary file not shown.

View File

@ -0,0 +1,6 @@
[.ShellClassInfo]
IconResource=C:\Windows\System32\SHELL32.dll,10
[ViewState]
Mode=
Vid=
FolderType=Generic

View File

@ -0,0 +1,2 @@
@echo off
@start /b "Data\Install - TrustedInstaller" "%~dp0Data\NSudo.exe" -U:T -P:E "%~dp0Data\Disabled.cmd"

View File

@ -0,0 +1,2 @@
@echo off
@start /b "Data\Install - TrustedInstaller" "%~dp0Data\NSudo.exe" -U:T -P:E "%~dp0Data\Enabled.cmd"

View File

@ -0,0 +1,3 @@
提醒:开启后【根据自身网络原因会存在部分延迟且检测失败的情况】
建议:可借助第三方驱动工具 或 官网搜索选择自己合适的驱动下载安装

View File

@ -0,0 +1,2 @@
[.ShellClassInfo]
IconResource=C:\Windows\System32\SHELL32.dll,5