diff --git a/README.md b/README.md index 7c8ace743ce..b0735915120 100644 --- a/README.md +++ b/README.md @@ -104,8 +104,8 @@ scoop bucket add apps https://github.com/kkzzhizhou/scoop-apps - noql-net/scoop - ygguorun/scoop-bucket - Velgus/Scoop-Portapps -- iquiw/scoop-bucket - aliesbelik/poldi +- iquiw/scoop-bucket - AStupidBear/scoop-bear - batkiz/backit - ChungZH/peach @@ -118,27 +118,28 @@ scoop bucket add apps https://github.com/kkzzhizhou/scoop-apps - aoisummer/scoop-bucket - SayCV/scoop-cvp - starise/Scoop-Gaming -- starise/Scoop-Confetti - seumsc/scoop-seu - Weidows-projects/scoop-3rd +- starise/Scoop-Confetti - TianXiaTech/scoop-txt - rivy/scoop-bucket - Darkatse/Scoop-Darkatse - kengwang/scoop-ctftools-bucket - AkariiinMKII/Scoop4kariiin - alextwothousand/scoop-bucket +- beer-psi/scoop-bucket - HUMORCE/nuke -- mo-san/scoop-bucket - littleli/Scoop-littleli -- beer-psi/scoop-bucket +- cmontage/scoopbucket-third +- mo-san/scoop-bucket - BenjaminMichaelis/Config - Toddli468/Pentest-Scoop-Bucket +- natecohen/scoop-av - Small-Ku/turbo-bucket - ShuguangSun/sgs-scoop-bucket - WinApps-share/WinApps-bucket - FlawlessCasual17/MyScoop - babo4d/scoop-xrtools -- natecohen/scoop-av - Deide/deide-bucket - The-Simples/scoop-minecraft - KnotUntied/scoop-fonts diff --git a/app-contributor-list.csv b/app-contributor-list.csv index e11845506dd..865358b1355 100644 --- a/app-contributor-list.csv +++ b/app-contributor-list.csv @@ -7630,6 +7630,7 @@ DNSAngel.json,akirco/aki-apps aofv.json,akirco/aki-apps uwd.json,akirco/aki-apps docker-desktop.json,akirco/aki-apps +fishingfunds.json,akirco/aki-apps FixWin10.json,akirco/aki-apps phantomjs_akirco.json,akirco/aki-apps mdbook_akirco.json,akirco/aki-apps @@ -7767,7 +7768,6 @@ termscp_akirco.json,akirco/aki-apps mtn_akirco.json,akirco/aki-apps tup_akirco.json,akirco/aki-apps xidel_akirco.json,akirco/aki-apps -fishingfunds.json,akirco/aki-apps powerhtml.json,akirco/aki-apps libwebp_akirco.json,akirco/aki-apps ncspot_akirco.json,akirco/aki-apps @@ -7805,8 +7805,8 @@ pandoc_akirco.json,akirco/aki-apps alipan.json,akirco/aki-apps nali_akirco.json,akirco/aki-apps gitomatic_akirco.json,akirco/aki-apps -pure-live.json,akirco/aki-apps far_akirco.json,akirco/aki-apps +simple-live.json,akirco/aki-apps wkhtmltopdf_akirco.json,akirco/aki-apps directoryPredictor.json,akirco/aki-apps ollama_akirco.json,akirco/aki-apps @@ -7815,6 +7815,7 @@ ntop_akirco.json,akirco/aki-apps yddict.json,akirco/aki-apps f2_akirco.json,akirco/aki-apps psutils_akirco.json,akirco/aki-apps +instaloader.json,akirco/aki-apps bob.json,akirco/aki-apps lsd_akirco.json,akirco/aki-apps easywsl.json,akirco/aki-apps @@ -8986,35 +8987,6 @@ oraclejdk6-portapps.json,Velgus/Scoop-Portapps nextcloud-portapps.json,Velgus/Scoop-Portapps tabby-portapps.json,Velgus/Scoop-Portapps android-studio-portapps.json,Velgus/Scoop-Portapps -logcli.json,iquiw/scoop-bucket -hunspell.json,iquiw/scoop-bucket -emacs-tree-sitter-module-ucrt64.json,iquiw/scoop-bucket -pinentry-w32-ncg.json,iquiw/scoop-bucket -rireq.json,iquiw/scoop-bucket -hackgen.json,iquiw/scoop-bucket -ollama-zip.json,iquiw/scoop-bucket -ct.json,iquiw/scoop-bucket -comrak.json,iquiw/scoop-bucket -cica.json,iquiw/scoop-bucket -gopls.json,iquiw/scoop-bucket -emacs-tree-sitter-module.json,iquiw/scoop-bucket -buildkit.json,iquiw/scoop-bucket -cinc-auditor.json,iquiw/scoop-bucket -gpgpdump.json,iquiw/scoop-bucket -ghc96.json,iquiw/scoop-bucket -iosevka.json,iquiw/scoop-bucket -aspell_iquiw.json,iquiw/scoop-bucket -zigmod.json,iquiw/scoop-bucket -browserpass.json,iquiw/scoop-bucket -yj.json,iquiw/scoop-bucket -password.json,iquiw/scoop-bucket -rawrite32.json,iquiw/scoop-bucket -tbls.json,iquiw/scoop-bucket -ledger.json,iquiw/scoop-bucket -hackgennerd.json,iquiw/scoop-bucket -smtprelay.json,iquiw/scoop-bucket -evtx_dump.json,iquiw/scoop-bucket -pict.json,iquiw/scoop-bucket tt.json,aliesbelik/poldi websocat.json,aliesbelik/poldi plow.json,aliesbelik/poldi @@ -9139,6 +9111,7 @@ ghz.json,aliesbelik/poldi tuifeed.json,aliesbelik/poldi qv.json,aliesbelik/poldi query-json.json,aliesbelik/poldi +yj.json,aliesbelik/poldi jnv.json,aliesbelik/poldi xurls.json,aliesbelik/poldi httprobe.json,aliesbelik/poldi @@ -9164,12 +9137,40 @@ pgweb.json,aliesbelik/poldi tpm.json,aliesbelik/poldi dnsping.json,aliesbelik/poldi trubka.json,aliesbelik/poldi +pict.json,aliesbelik/poldi gobench.json,aliesbelik/poldi xq.json,aliesbelik/poldi pingu.json,aliesbelik/poldi mqttui.json,aliesbelik/poldi kcli.json,aliesbelik/poldi kubestr.json,aliesbelik/poldi +logcli.json,iquiw/scoop-bucket +hunspell.json,iquiw/scoop-bucket +emacs-tree-sitter-module-ucrt64.json,iquiw/scoop-bucket +pinentry-w32-ncg.json,iquiw/scoop-bucket +rireq.json,iquiw/scoop-bucket +hackgen.json,iquiw/scoop-bucket +ollama-zip.json,iquiw/scoop-bucket +ct.json,iquiw/scoop-bucket +comrak.json,iquiw/scoop-bucket +cica.json,iquiw/scoop-bucket +gopls.json,iquiw/scoop-bucket +emacs-tree-sitter-module.json,iquiw/scoop-bucket +buildkit.json,iquiw/scoop-bucket +cinc-auditor.json,iquiw/scoop-bucket +gpgpdump.json,iquiw/scoop-bucket +ghc96.json,iquiw/scoop-bucket +iosevka.json,iquiw/scoop-bucket +aspell_iquiw.json,iquiw/scoop-bucket +zigmod.json,iquiw/scoop-bucket +browserpass.json,iquiw/scoop-bucket +password.json,iquiw/scoop-bucket +rawrite32.json,iquiw/scoop-bucket +tbls.json,iquiw/scoop-bucket +ledger.json,iquiw/scoop-bucket +hackgennerd.json,iquiw/scoop-bucket +smtprelay.json,iquiw/scoop-bucket +evtx_dump.json,iquiw/scoop-bucket reset-permission.json,AStupidBear/scoop-bear regworkshop.json,AStupidBear/scoop-bear hdfview.json,AStupidBear/scoop-bear @@ -9681,45 +9682,6 @@ borderless-gaming.json,starise/Scoop-Gaming steamless.json,starise/Scoop-Gaming uniws-patcher.json,starise/Scoop-Gaming nvidia-display-driver.json,starise/Scoop-Gaming -firefox-policies.json,starise/Scoop-Confetti -komorebi-tray.json,starise/Scoop-Confetti -colors.json,starise/Scoop-Confetti -audiotester.json,starise/Scoop-Confetti -4k-videotomp3.json,starise/Scoop-Confetti -link-shell-extension.json,starise/Scoop-Confetti -monitor-switcher.json,starise/Scoop-Confetti -muffon.json,starise/Scoop-Confetti -svg-explorer-extension.json,starise/Scoop-Confetti -latencymon.json,starise/Scoop-Confetti -cbxconverter.json,starise/Scoop-Confetti -lunatask.json,starise/Scoop-Confetti -heavyload.json,starise/Scoop-Confetti -filelist.json,starise/Scoop-Confetti -sacd-extract.json,starise/Scoop-Confetti -rotki.json,starise/Scoop-Confetti -freezer.json,starise/Scoop-Confetti -firefox-portable-it.json,starise/Scoop-Confetti -firefox-it.json,starise/Scoop-Confetti -vscode-it.json,starise/Scoop-Confetti -4k-videodownloader.json,starise/Scoop-Confetti -4k-stogram.json,starise/Scoop-Confetti -nconvert_starise.json,starise/Scoop-Confetti -sacd-extract-gui.json,starise/Scoop-Confetti -clipgrab.json,starise/Scoop-Confetti -srt-to-vtt.json,starise/Scoop-Confetti -win11-toggle-rounded-corners.json,starise/Scoop-Confetti -wilma.json,starise/Scoop-Confetti -batchencoder.json,starise/Scoop-Confetti -aquasnap.json,starise/Scoop-Confetti -firefox-developer-it.json,starise/Scoop-Confetti -4k-youtubetomp3.json,starise/Scoop-Confetti -randpass.json,starise/Scoop-Confetti -win11-virtual-desktop-extension.json,starise/Scoop-Confetti -win10-virtual-desktop-enhancer.json,starise/Scoop-Confetti -vscodium-it.json,starise/Scoop-Confetti -firefox-beta-it.json,starise/Scoop-Confetti -epub-metadata-editor.json,starise/Scoop-Confetti -bluetooth-version-finder.json,starise/Scoop-Confetti clash-dotnet.json,seumsc/scoop-seu clash-win.json,seumsc/scoop-seu resxtranslator.json,seumsc/scoop-seu @@ -9764,6 +9726,45 @@ Air_Weidows-projects.json,Weidows-projects/scoop-3rd ollama_Weidows-projects.json,Weidows-projects/scoop-3rd nvm_Weidows-projects.json,Weidows-projects/scoop-3rd eva_Weidows-projects.json,Weidows-projects/scoop-3rd +firefox-policies.json,starise/Scoop-Confetti +komorebi-tray.json,starise/Scoop-Confetti +colors.json,starise/Scoop-Confetti +audiotester.json,starise/Scoop-Confetti +4k-videotomp3.json,starise/Scoop-Confetti +link-shell-extension.json,starise/Scoop-Confetti +monitor-switcher.json,starise/Scoop-Confetti +muffon.json,starise/Scoop-Confetti +svg-explorer-extension.json,starise/Scoop-Confetti +latencymon.json,starise/Scoop-Confetti +cbxconverter.json,starise/Scoop-Confetti +lunatask.json,starise/Scoop-Confetti +heavyload.json,starise/Scoop-Confetti +filelist.json,starise/Scoop-Confetti +sacd-extract.json,starise/Scoop-Confetti +rotki.json,starise/Scoop-Confetti +freezer.json,starise/Scoop-Confetti +firefox-portable-it.json,starise/Scoop-Confetti +firefox-it.json,starise/Scoop-Confetti +vscode-it.json,starise/Scoop-Confetti +4k-videodownloader.json,starise/Scoop-Confetti +4k-stogram.json,starise/Scoop-Confetti +nconvert_starise.json,starise/Scoop-Confetti +sacd-extract-gui.json,starise/Scoop-Confetti +clipgrab.json,starise/Scoop-Confetti +srt-to-vtt.json,starise/Scoop-Confetti +win11-toggle-rounded-corners.json,starise/Scoop-Confetti +wilma.json,starise/Scoop-Confetti +batchencoder.json,starise/Scoop-Confetti +aquasnap.json,starise/Scoop-Confetti +firefox-developer-it.json,starise/Scoop-Confetti +4k-youtubetomp3.json,starise/Scoop-Confetti +randpass.json,starise/Scoop-Confetti +win11-virtual-desktop-extension.json,starise/Scoop-Confetti +win10-virtual-desktop-enhancer.json,starise/Scoop-Confetti +vscodium-it.json,starise/Scoop-Confetti +firefox-beta-it.json,starise/Scoop-Confetti +epub-metadata-editor.json,starise/Scoop-Confetti +bluetooth-version-finder.json,starise/Scoop-Confetti clash-for-windows-cn.json,TianXiaTech/scoop-txt geekdesk.json,TianXiaTech/scoop-txt 360wallpaper.json,TianXiaTech/scoop-txt @@ -10396,6 +10397,48 @@ emscripten_alextwothousand.json,alextwothousand/scoop-bucket winfetch_alextwothousand.json,alextwothousand/scoop-bucket luajit_alextwothousand.json,alextwothousand/scoop-bucket pscore.json,alextwothousand/scoop-bucket +cider-nightly.json,beer-psi/scoop-bucket +brokenithm-kb.json,beer-psi/scoop-bucket +beeper.json,beer-psi/scoop-bucket +scoop-search_beer-psi.json,beer-psi/scoop-bucket +apfs.json,beer-psi/scoop-bucket +arrayv.json,beer-psi/scoop-bucket +unxwb.json,beer-psi/scoop-bucket +windowstoolbox-head.json,beer-psi/scoop-bucket +adguardhome-beta.json,beer-psi/scoop-bucket +jpeg-bin.json,beer-psi/scoop-bucket +aidoku-cli.json,beer-psi/scoop-bucket +absolutetouch.json,beer-psi/scoop-bucket +itunes64-older-video-cards-np.json,beer-psi/scoop-bucket +sl-h.json,beer-psi/scoop-bucket +ntfs2btrfs_beer-psi.json,beer-psi/scoop-bucket +peupdate.json,beer-psi/scoop-bucket +unikey.json,beer-psi/scoop-bucket +ib-en.json,beer-psi/scoop-bucket +justasplanned.json,beer-psi/scoop-bucket +thewitchshouse-jp.json,beer-psi/scoop-bucket +sl.json,beer-psi/scoop-bucket +rawcap-old.json,beer-psi/scoop-bucket +libretta.json,beer-psi/scoop-bucket +zalo.json,beer-psi/scoop-bucket +xprop.json,beer-psi/scoop-bucket +evkey.json,beer-psi/scoop-bucket +graboid.json,beer-psi/scoop-bucket +windowstoolbox.json,beer-psi/scoop-bucket +ib-jp.json,beer-psi/scoop-bucket +itunes-np.json,beer-psi/scoop-bucket +oneko.json,beer-psi/scoop-bucket +sound-of-sorting.json,beer-psi/scoop-bucket +absolutetouchex.json,beer-psi/scoop-bucket +pingo.json,beer-psi/scoop-bucket +slidershim.json,beer-psi/scoop-bucket +imazing.json,beer-psi/scoop-bucket +susplayer.json,beer-psi/scoop-bucket +thewitchshouse-en.json,beer-psi/scoop-bucket +plutil.json,beer-psi/scoop-bucket +punzip.json,beer-psi/scoop-bucket +onetrueawk.json,beer-psi/scoop-bucket +majdata.json,beer-psi/scoop-bucket windows-kill.json,HUMORCE/nuke bminer-lite.json,HUMORCE/nuke context-menu-launcher.json,HUMORCE/nuke @@ -10488,11 +10531,42 @@ dogehouse.json,HUMORCE/nuke xpdf-tools-LSP-arabic.json,HUMORCE/nuke nebula.json,HUMORCE/nuke fiddler-classic-addon-freehttp.json,HUMORCE/nuke -instaloader.json,HUMORCE/nuke hostsmgr.json,HUMORCE/nuke ttfautohint.json,HUMORCE/nuke zoxide_HUMORCE.json,HUMORCE/nuke fiddler-classic-addon-anywhere.json,HUMORCE/nuke +nak.json,littleli/Scoop-littleli +tokio-console.json,littleli/Scoop-littleli +haskell-breeze.json,littleli/Scoop-littleli +agate.json,littleli/Scoop-littleli +sqliteq.json,littleli/Scoop-littleli +dooble.json,littleli/Scoop-littleli +7800basic.json,littleli/Scoop-littleli +gh-dash.json,littleli/Scoop-littleli +tic80.json,littleli/Scoop-littleli +hercules.json,littleli/Scoop-littleli +slu.json,littleli/Scoop-littleli +koka-lang.json,littleli/Scoop-littleli +otter-browser.json,littleli/Scoop-littleli +zecwallet-lite.json,littleli/Scoop-littleli +mpd_littleli.json,littleli/Scoop-littleli +harbour.json,littleli/Scoop-littleli +csvdiff.json,littleli/Scoop-littleli +zecwallet-cli.json,littleli/Scoop-littleli +immudb.json,littleli/Scoop-littleli +msix.json,littleli/Scoop-littleli +zcashd.json,littleli/Scoop-littleli +mpg123_littleli.json,littleli/Scoop-littleli +immuclient.json,littleli/Scoop-littleli +difftastic_littleli.json,littleli/Scoop-littleli +immuadmin.json,littleli/Scoop-littleli +gemget.json,littleli/Scoop-littleli +wait-for-it.json,littleli/Scoop-littleli +qmmp.json,littleli/Scoop-littleli +xasm.json,littleli/Scoop-littleli +netmet.json,littleli/Scoop-littleli +netsurf.json,littleli/Scoop-littleli +doom-remake4.json,littleli/Scoop-littleli __template.json,mo-san/scoop-bucket pupsqlite.json,mo-san/scoop-bucket font-migu-2m.json,mo-san/scoop-bucket @@ -10551,80 +10625,6 @@ xdoc2txt.json,mo-san/scoop-bucket pico.json,mo-san/scoop-bucket mousegesturel-ahk.json,mo-san/scoop-bucket alt-ime-ahk.json,mo-san/scoop-bucket -nak.json,littleli/Scoop-littleli -tokio-console.json,littleli/Scoop-littleli -haskell-breeze.json,littleli/Scoop-littleli -agate.json,littleli/Scoop-littleli -sqliteq.json,littleli/Scoop-littleli -dooble.json,littleli/Scoop-littleli -7800basic.json,littleli/Scoop-littleli -gh-dash.json,littleli/Scoop-littleli -tic80.json,littleli/Scoop-littleli -hercules.json,littleli/Scoop-littleli -slu.json,littleli/Scoop-littleli -koka-lang.json,littleli/Scoop-littleli -otter-browser.json,littleli/Scoop-littleli -zecwallet-lite.json,littleli/Scoop-littleli -mpd_littleli.json,littleli/Scoop-littleli -harbour.json,littleli/Scoop-littleli -csvdiff.json,littleli/Scoop-littleli -zecwallet-cli.json,littleli/Scoop-littleli -immudb.json,littleli/Scoop-littleli -msix.json,littleli/Scoop-littleli -zcashd.json,littleli/Scoop-littleli -mpg123_littleli.json,littleli/Scoop-littleli -immuclient.json,littleli/Scoop-littleli -difftastic_littleli.json,littleli/Scoop-littleli -immuadmin.json,littleli/Scoop-littleli -gemget.json,littleli/Scoop-littleli -wait-for-it.json,littleli/Scoop-littleli -qmmp.json,littleli/Scoop-littleli -xasm.json,littleli/Scoop-littleli -netmet.json,littleli/Scoop-littleli -netsurf.json,littleli/Scoop-littleli -doom-remake4.json,littleli/Scoop-littleli -cider-nightly.json,beer-psi/scoop-bucket -brokenithm-kb.json,beer-psi/scoop-bucket -beeper.json,beer-psi/scoop-bucket -scoop-search_beer-psi.json,beer-psi/scoop-bucket -apfs.json,beer-psi/scoop-bucket -arrayv.json,beer-psi/scoop-bucket -unxwb.json,beer-psi/scoop-bucket -windowstoolbox-head.json,beer-psi/scoop-bucket -adguardhome-beta.json,beer-psi/scoop-bucket -jpeg-bin.json,beer-psi/scoop-bucket -aidoku-cli.json,beer-psi/scoop-bucket -absolutetouch.json,beer-psi/scoop-bucket -itunes64-older-video-cards-np.json,beer-psi/scoop-bucket -sl-h.json,beer-psi/scoop-bucket -ntfs2btrfs_beer-psi.json,beer-psi/scoop-bucket -peupdate.json,beer-psi/scoop-bucket -unikey.json,beer-psi/scoop-bucket -ib-en.json,beer-psi/scoop-bucket -justasplanned.json,beer-psi/scoop-bucket -thewitchshouse-jp.json,beer-psi/scoop-bucket -sl.json,beer-psi/scoop-bucket -rawcap-old.json,beer-psi/scoop-bucket -libretta.json,beer-psi/scoop-bucket -zalo.json,beer-psi/scoop-bucket -xprop.json,beer-psi/scoop-bucket -evkey.json,beer-psi/scoop-bucket -graboid.json,beer-psi/scoop-bucket -windowstoolbox.json,beer-psi/scoop-bucket -ib-jp.json,beer-psi/scoop-bucket -itunes-np.json,beer-psi/scoop-bucket -oneko.json,beer-psi/scoop-bucket -sound-of-sorting.json,beer-psi/scoop-bucket -absolutetouchex.json,beer-psi/scoop-bucket -pingo.json,beer-psi/scoop-bucket -slidershim.json,beer-psi/scoop-bucket -imazing.json,beer-psi/scoop-bucket -susplayer.json,beer-psi/scoop-bucket -thewitchshouse-en.json,beer-psi/scoop-bucket -plutil.json,beer-psi/scoop-bucket -punzip.json,beer-psi/scoop-bucket -onetrueawk.json,beer-psi/scoop-bucket -majdata.json,beer-psi/scoop-bucket settings_BenjaminMichaelis.json,BenjaminMichaelis/Config benjaminmichaelis.omp.json,BenjaminMichaelis/Config GitIntegrationWithBeyondCompare.json,BenjaminMichaelis/Config @@ -10751,6 +10751,37 @@ golin.json,Toddli468/Pentest-Scoop-Bucket Pyke_Shiro.json,Toddli468/Pentest-Scoop-Bucket SSRFmap.json,Toddli468/Pentest-Scoop-Bucket lc.json,Toddli468/Pentest-Scoop-Bucket +subrip.json,natecohen/scoop-av +svt-hevc.json,natecohen/scoop-av +avsinfotool.json,natecohen/scoop-av +nvencc.json,natecohen/scoop-av +dav1d.json,natecohen/scoop-av +mis2x264.json,natecohen/scoop-av +rav1e-weekly.json,natecohen/scoop-av +eac3to-updated-libs.json,natecohen/scoop-av +avsmeter.json,natecohen/scoop-av +tiff.json,natecohen/scoop-av +av1an.json,natecohen/scoop-av +hlg-tools.json,natecohen/scoop-av +fdkaac.json,natecohen/scoop-av +hdr10plus_tool.json,natecohen/scoop-av +svt-vp9.json,natecohen/scoop-av +virtualdub2.json,natecohen/scoop-av +pgcdemux.json,natecohen/scoop-av +av1an-nightly.json,natecohen/scoop-av +vpx.json,natecohen/scoop-av +dovi_tool.json,natecohen/scoop-av +avs2yuv.json,natecohen/scoop-av +chaptereditor.json,natecohen/scoop-av +delaycut.json,natecohen/scoop-av +ogg.json,natecohen/scoop-av +tsmuxer.json,natecohen/scoop-av +aom.json,natecohen/scoop-av +rav1e.json,natecohen/scoop-av +svt-av1.json,natecohen/scoop-av +flac-frontend.json,natecohen/scoop-av +mkvcleaver.json,natecohen/scoop-av +pinga.json,natecohen/scoop-av twmd-cli.json,Small-Ku/turbo-bucket better-genshin-impact.json,Small-Ku/turbo-bucket zluda.json,Small-Ku/turbo-bucket @@ -11022,7 +11053,6 @@ cloudflare-warp-np.json,FlawlessCasual17/MyScoop khinsider-downloader.json,FlawlessCasual17/MyScoop monitorian.json,FlawlessCasual17/MyScoop poweriso-np.json,FlawlessCasual17/MyScoop -nvencc.json,FlawlessCasual17/MyScoop imagefinder.json,FlawlessCasual17/MyScoop creaminstaller.json,FlawlessCasual17/MyScoop fluent-metro.json,FlawlessCasual17/MyScoop @@ -11051,7 +11081,6 @@ icopy.json,FlawlessCasual17/MyScoop saucedacity.json,FlawlessCasual17/MyScoop audioplaybackconnector.json,FlawlessCasual17/MyScoop fxsound-np.json,FlawlessCasual17/MyScoop -virtualdub2.json,FlawlessCasual17/MyScoop ut-video-codec.json,FlawlessCasual17/MyScoop generate-domains-blocklist.json,FlawlessCasual17/MyScoop event-log-explorer.json,FlawlessCasual17/MyScoop @@ -11258,35 +11287,6 @@ openvr-input-emulator.json,babo4d/scoop-xrtools openra-sole-survivor.json,babo4d/scoop-xrtools opencomposite.json,babo4d/scoop-xrtools magicchatbox.json,babo4d/scoop-xrtools -subrip.json,natecohen/scoop-av -svt-hevc.json,natecohen/scoop-av -avsinfotool.json,natecohen/scoop-av -dav1d.json,natecohen/scoop-av -mis2x264.json,natecohen/scoop-av -rav1e-weekly.json,natecohen/scoop-av -eac3to-updated-libs.json,natecohen/scoop-av -avsmeter.json,natecohen/scoop-av -tiff.json,natecohen/scoop-av -av1an.json,natecohen/scoop-av -hlg-tools.json,natecohen/scoop-av -fdkaac.json,natecohen/scoop-av -hdr10plus_tool.json,natecohen/scoop-av -svt-vp9.json,natecohen/scoop-av -pgcdemux.json,natecohen/scoop-av -av1an-nightly.json,natecohen/scoop-av -vpx.json,natecohen/scoop-av -dovi_tool.json,natecohen/scoop-av -avs2yuv.json,natecohen/scoop-av -chaptereditor.json,natecohen/scoop-av -delaycut.json,natecohen/scoop-av -ogg.json,natecohen/scoop-av -tsmuxer.json,natecohen/scoop-av -aom.json,natecohen/scoop-av -rav1e.json,natecohen/scoop-av -svt-av1.json,natecohen/scoop-av -flac-frontend.json,natecohen/scoop-av -mkvcleaver.json,natecohen/scoop-av -pinga.json,natecohen/scoop-av hunterpie.json,Deide/deide-bucket rahasher.json,Deide/deide-bucket opensoldat.json,Deide/deide-bucket diff --git a/bucket.config b/bucket.config index ff55c5328dd..675b74e91d4 100644 --- a/bucket.config +++ b/bucket.config @@ -54,8 +54,8 @@ NyaMisty/scoop_bucket_misty noql-net/scoop ygguorun/scoop-bucket Velgus/Scoop-Portapps -iquiw/scoop-bucket aliesbelik/poldi +iquiw/scoop-bucket AStupidBear/scoop-bear batkiz/backit ChungZH/peach @@ -68,27 +68,28 @@ abgox/abgo_bucket aoisummer/scoop-bucket SayCV/scoop-cvp starise/Scoop-Gaming -starise/Scoop-Confetti seumsc/scoop-seu Weidows-projects/scoop-3rd +starise/Scoop-Confetti TianXiaTech/scoop-txt rivy/scoop-bucket Darkatse/Scoop-Darkatse kengwang/scoop-ctftools-bucket AkariiinMKII/Scoop4kariiin alextwothousand/scoop-bucket +beer-psi/scoop-bucket HUMORCE/nuke -mo-san/scoop-bucket littleli/Scoop-littleli -beer-psi/scoop-bucket +cmontage/scoopbucket-third +mo-san/scoop-bucket BenjaminMichaelis/Config Toddli468/Pentest-Scoop-Bucket +natecohen/scoop-av Small-Ku/turbo-bucket ShuguangSun/sgs-scoop-bucket WinApps-share/WinApps-bucket FlawlessCasual17/MyScoop babo4d/scoop-xrtools -natecohen/scoop-av Deide/deide-bucket The-Simples/scoop-minecraft KnotUntied/scoop-fonts diff --git a/latest.update b/latest.update index d2e58049648..e769b3d256f 100644 --- a/latest.update +++ b/latest.update @@ -1 +1 @@ -最近更新时间:Wed Nov 6 04:46:55 UTC 2024 +最近更新时间:Thu Nov 7 04:46:05 UTC 2024 diff --git a/scripts/android-sdk-link.ps1 b/scripts/android-sdk-link.ps1 new file mode 100644 index 00000000000..ef06afb0ef1 --- /dev/null +++ b/scripts/android-sdk-link.ps1 @@ -0,0 +1,12 @@ +. "$bucketsdir\$bucket\setup.ps1" + +Get-ChildItem -Path "$dir\$component" | ForEach-Object { + $source = "$target_dir\$($_.Name)" + + if ($_.PSIsContainer) { + New-Item -Path $source -ItemType Junction -Value $_ -Force + attrib +r $source /l + } else { + New-Item -Path $source -ItemType HardLink -Value $_ -Force + } +} diff --git a/scripts/android-sdk-setup.ps1 b/scripts/android-sdk-setup.ps1 new file mode 100644 index 00000000000..8c5059f03cb --- /dev/null +++ b/scripts/android-sdk-setup.ps1 @@ -0,0 +1,7 @@ +$component = ([string]$app).Substring(12) +$target_dir = "$(persistdir android-sdk-base $global)\$component" + +Get-ChildItem "$target_dir\*" | ForEach-Object { + attrib -r $_.FullName /l + Remove-Item -Path $_.FullName -Recurse -Force +} diff --git a/scripts/build.mjs b/scripts/build.mjs new file mode 100644 index 00000000000..2c6ea8a706c --- /dev/null +++ b/scripts/build.mjs @@ -0,0 +1,80 @@ +// Dependencies +import { asyncForEach, getHash } from './shared.mjs'; +import { renderFile } from 'ejs'; +import { stable, prerelease } from './versions.mjs'; +import { writeFile } from 'fs'; +import logSymbols from 'log-symbols'; +import isCI from 'is-ci'; +import MFH from 'make-fetch-happen'; +import path from 'path'; + +const fetch = MFH.defaults({ + cacheManager: '.cache' +}); + +const __dirname = path.resolve(path.dirname('')); +let template = (version, hashes, outFile = null) => { + const data = { + version: version, + majorVersion: version[0], + hashes: hashes + }; + + renderFile(path.join(__dirname, 'scripts', '/manifest.ejs'), data, function(err, contents) { + if (err) { + console.error(logSymbols.error, err); + return; + } + + outFile = (outFile !== null) ? outFile : `nsis-${version}.json`; + outFile = path.join(process.cwd(), 'bucket', outFile); + contents = JSON.stringify(JSON.parse(contents), null, 4); + + writeFile(outFile, contents, (err) => { + if (err) throw err; + console.log(logSymbols.success, `Saved: ${outFile}`); + }); + }); +}; + +const createManifest = async (version, outFile = null) => { + const major = version[0]; + const directory = (/\d(a|b|rc)\d*$/.test(version) === true) ? `NSIS%20${major}%20Pre-release` : `NSIS%20${major}`; + const url = isCI + ? `https://downloads.sourceforge.net/project/nsis/${directory}/${version}/nsis-${version}.zip` + : `https://netcologne.dl.sourceforge.net/project/nsis/${directory}/${version}/nsis-${version}.zip`; + + let response; + + try { + response = await fetch(url); + } catch (error) { + if (error.statusMessage) { + if (error.statusMessage === 'Too Many Requests') { + return console.warn(logSymbols.warning, `${error.statusMessage}: nsis-${version}.zip`); + } + return console.error(logSymbols.error, `${error.statusMessage}: nsis-${version}.zip`); + } else if (error.code === 'ENOENT') { + return console.log('Skipping Test: Manifest Not Found'); + } + console.error(logSymbols.error, error); + } + + const hashes = await getHash(await response.arrayBuffer()); + template(version, hashes, outFile); +}; + +const allVersions = [...stable.v2, ...prerelease.v3, ...stable.v3]; + +// All versions +asyncForEach(allVersions, async (version) => { + await createManifest(version); +}); + +(async () => { + const v2Versions = stable.v2; + const v3Versions = stable.v3; + + await createManifest(v2Versions[v2Versions.length - 1], 'nsis-2.json'); + await createManifest(v3Versions[v3Versions.length - 1], 'nsis.json'); +})(); diff --git a/scripts/bypass/start-bypass.ps1 b/scripts/bypass/start-bypass.ps1 new file mode 100644 index 00000000000..d6deeb5403e --- /dev/null +++ b/scripts/bypass/start-bypass.ps1 @@ -0,0 +1 @@ +sudo Start-Process "$(scoop prefix bypass)\Bypass.exe" -WorkingDirectory "$(scoop prefix bypass)" -WindowStyle Hidden diff --git a/scripts/chrome/Chrome.exe b/scripts/chrome/Chrome.exe new file mode 100644 index 00000000000..974455cd0bb Binary files /dev/null and b/scripts/chrome/Chrome.exe differ diff --git "a/scripts/chrome/\346\270\205\347\220\206.bat" "b/scripts/chrome/\346\270\205\347\220\206.bat" new file mode 100644 index 00000000000..97590001706 --- /dev/null +++ "b/scripts/chrome/\346\270\205\347\220\206.bat" @@ -0,0 +1,149 @@ +@ECHO OFF&(PUSHD "%~DP0")&(REG QUERY "HKU\S-1-5-19">NUL 2>&1)||( +powershell -Command "Start-Process '%~sdpnx0' -Verb RunAs"&&EXIT) +taskkill /f /im chrome* /t >NUL 2>NUL +taskkill /f /im TabPlus.exe >NUL 2>NUL +taskkill /f /im MyChrome.exe >NUL 2>NUL + +rd/s/q "%ProgramData%\Google\Chrome"2>NUL +rd/s/q "%LocalAppData%\Google\Chrome"2>NUL +del/q "%Public%\Desktop\Chrome.lnk" >NUL 2>NUL +del/q "%UserProfile%\Desktop\Chrome.lnk" >NUL 2>NUL +rd/s/q "%AppData%\Microsoft\Windows\Start Menu\Programs\Google Chrome"2>NUL +rd/s/q "%ProgramData%\Microsoft\Windows\Start Menu\Programs\Google Chrome"2>NUL +reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Chrome" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Chrome" /f /reg:32 >NUL 2>NUL + +reg delete "HKCU\SOFTWARE\Google\Update" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Google\Chrome" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Google\Update" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Google\Chrome" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Google\Update" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Google\Chrome" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Microsoft\MediaPlayer\ShimInclusionList\chrome.exe" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\Chrome.exe" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\AppID\{4EB61BAC-A3B6-4760-9581-655041EF4D69}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\AppID\{708860E0-F641-4611-8895-7D867DD3675B}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\AppID\{9465B4B4-5216-4042-9A2C-754D3BCDC410}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\AppID\GoogleUpdate.exe" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\ChromeHTML" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{708860E0-F641-4611-8895-7D867DD3675B}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{9AAA1336-C131-4B16-9A86-7BAF3B3B76F8}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{9D6AA569-9F30-41AD-885A-346685C74928}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{A2C6CB58-C076-425C-ACB7-6D19D64428CD}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{E9957D25-7EB7-42C8-AD32-06AF7776A788}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\GoogleUpdate.CoCreateAsync" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\GoogleUpdate.CoCreateAsync.1.0" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\GoogleUpdate.CoreClass" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\GoogleUpdate.CoreClass.1" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\GoogleUpdate.CoreMachineClass" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\GoogleUpdate.CoreMachineClass.1" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\GoogleUpdate.CredentialDialogMachine" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\GoogleUpdate.CredentialDialogMachine.1.0" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\GoogleUpdate.OnDemandCOMClassMachine" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\GoogleUpdate.OnDemandCOMClassMachine.1.0" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\GoogleUpdate.OnDemandCOMClassMachineFallback" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\GoogleUpdate.OnDemandCOMClassMachineFallback.1.0" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\GoogleUpdate.OnDemandCOMClassSvc" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\GoogleUpdate.OnDemandCOMClassSvc.1.0" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\GoogleUpdate.PolicyStatus" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\GoogleUpdate.PolicyStatus.1.0" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\GoogleUpdate.ProcessLauncher" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\GoogleUpdate.ProcessLauncher.1.0" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\GoogleUpdate.Update3COMClassService" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\GoogleUpdate.Update3COMClassService.1.0" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\GoogleUpdate.Update3WebMachine" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\GoogleUpdate.Update3WebMachine.1.0" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\GoogleUpdate.Update3WebMachineFallback" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\GoogleUpdate.Update3WebMachineFallback.1.0" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\GoogleUpdate.Update3WebSvc" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\GoogleUpdate.Update3WebSvc.1.0" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Installer\Features\A01655856B165233AA6AED6D9BC0FED8" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Installer\Products\A01655856B165233AA6AED6D9BC0FED8" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Installer\UpgradeCodes\96FDFD1C54952F233AE5EE499CC9C74F" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{084D78A8-B084-4E14-A629-A2C419B0E3D9}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{0CD01D1E-4A1C-489D-93B9-9B6672877C57}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{128C2DA6-2BC0-44C0-B3F6-4EC22E647964}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{18D0F672-18B4-48E6-AD36-6E6BF01DBBC4}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{19692F10-ADD2-4EFF-BE54-E61C62E40D13}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{1C642CED-CA3B-4013-A9DF-CA6CE5FF6503}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{247954F9-9EDC-4E68-8CC3-150C2B89EADF}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{2D363682-561D-4C3A-81C6-F2F82107562A}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{2E629606-312A-482F-9B12-2C4ABF6F0B6D}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{31AC3F11-E5EA-4A85-8A3D-8E095A39C27B}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{3D05F64F-71E3-48A5-BF6B-83315BC8AE1F}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{463ABECF-410D-407F-8AF5-0DF35A005CC8}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{494B20CF-282E-4BDD-9F5D-B70CB09D351E}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{49D7563B-2DDB-4831-88C8-768A53833837}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{4DE778FE-F195-4EE3-9DAB-FE446C239221}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{4E223325-C16B-4EEB-AEDC-19AA99A237FA}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{5B25A8DC-1780-4178-A629-6BE8B8DEFAA2}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{6DB17455-4E85-46E7-9D23-E555E4B005AF}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{76F7B787-A67C-4C73-82C7-31F5E3AABC5C}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{8476CE12-AE1F-4198-805C-BA0F9B783F57}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{909489C2-85A6-4322-AA56-D25278649D67}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{B3A47570-0A85-4AEA-8270-529D47899603}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{BCDCB538-01C0-46D1-A6A7-52F4D021C272}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{D106AB5F-A70E-400E-A21B-96208C1D8DBB}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{DAB1D343-1B2A-47F9-B445-93DC50704BFE}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{DCAB8386-4F03-4DBD-A366-D90BC9F68DE6}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{DD42475D-6D46-496A-924E-BD5630B4CBBA}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{F63F6F8B-ACD5-413C-A44B-0409136D26CB}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{FE908CDD-22BB-472A-9870-1A0390E42F36}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\TypeLib\{463ABECF-410D-407F-8AF5-0DF35A005CC8}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{25461599-633D-42B1-84FB-7CD68D026E53}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{4EB61BAC-A3B6-4760-9581-655041EF4D69}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{521FDB42-7130-4806-822A-FC5163FAD983}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{534F5323-3569-4F42-919D-1E1CF93E5BF6}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{598FE0E5-E02D-465D-9A9D-37974A28FD42}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{6F8BD55B-E83D-4A47-85BE-81FFA8057A69}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{7DE94008-8AFD-4C70-9728-C6FBFFF6A73E}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{8A1D4361-2C08-4700-A351-3EAA9CBFF5E4}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{9465B4B4-5216-4042-9A2C-754D3BCDC410}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{9AAA1336-C131-4B16-9A86-7BAF3B3B76F8}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{9B2340A0-4068-43D6-B404-32E27217859D}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{9D6AA569-9F30-41AD-885A-346685C74928}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{ABC01078-F197-4B0B-ADBC-CFE684B39C82}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{B3D28DBD-0DFA-40E4-8071-520767BADC7E}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{E225E692-4B47-4777-9BED-4FD7FE257F0E}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{E9957D25-7EB7-42C8-AD32-06AF7776A788}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{084D78A8-B084-4E14-A629-A2C419B0E3D9}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{0CD01D1E-4A1C-489D-93B9-9B6672877C57}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{128C2DA6-2BC0-44C0-B3F6-4EC22E647964}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{18D0F672-18B4-48E6-AD36-6E6BF01DBBC4}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{19692F10-ADD2-4EFF-BE54-E61C62E40D13}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{1C642CED-CA3B-4013-A9DF-CA6CE5FF6503}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{247954F9-9EDC-4E68-8CC3-150C2B89EADF}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{2D363682-561D-4C3A-81C6-F2F82107562A}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{2E629606-312A-482F-9B12-2C4ABF6F0B6D}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{31AC3F11-E5EA-4A85-8A3D-8E095A39C27B}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{3D05F64F-71E3-48A5-BF6B-83315BC8AE1F}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{494B20CF-282E-4BDD-9F5D-B70CB09D351E}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{49D7563B-2DDB-4831-88C8-768A53833837}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{4DE778FE-F195-4EE3-9DAB-FE446C239221}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{4E223325-C16B-4EEB-AEDC-19AA99A237FA}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{5B25A8DC-1780-4178-A629-6BE8B8DEFAA2}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{6DB17455-4E85-46E7-9D23-E555E4B005AF}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{76F7B787-A67C-4C73-82C7-31F5E3AABC5C}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{8476CE12-AE1F-4198-805C-BA0F9B783F57}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{909489C2-85A6-4322-AA56-D25278649D67}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{B3A47570-0A85-4AEA-8270-529D47899603}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{BCDCB538-01C0-46D1-A6A7-52F4D021C272}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{D106AB5F-A70E-400E-A21B-96208C1D8DBB}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{DAB1D343-1B2A-47F9-B445-93DC50704BFE}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{DCAB8386-4F03-4DBD-A366-D90BC9F68DE6}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{DD42475D-6D46-496A-924E-BD5630B4CBBA}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{F63F6F8B-ACD5-413C-A44B-0409136D26CB}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{FE908CDD-22BB-472A-9870-1A0390E42F36}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Clients\StartMenuInternet\Google Chrome" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Microsoft\Active Setup\Installed Components\{8A69D345-D564-463c-AFF1-A69D9E530F96}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Microsoft\MediaPlayer\ShimInclusionList\chrome.exe" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{5855610A-61B6-3325-AAA6-DED6B90CEF8D}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\GoogleUpdate.exe" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\RegisteredApplications" /f /v "Google Chrome" >NUL 2>NUL +reg delete "HKLM\SYSTEM\CurrentControlSet\Services\EventLog\Application\Chrome" /f >NUL 2>NUL +reg delete "HKLM\SYSTEM\CurrentControlSet\Services\GoogleChromeElevationService" /f >NUL 2>NUL +reg delete "HKLM\SYSTEM\CurrentControlSet\Services\gupdate" /f >NUL 2>NUL +reg delete "HKLM\SYSTEM\CurrentControlSet\Services\gupdatem" /f >NUL 2>NUL + +CLS +ECHO.&ECHO 423Down.com diff --git "a/scripts/chrome/\350\257\264\346\230\216.txt" "b/scripts/chrome/\350\257\264\346\230\216.txt" new file mode 100644 index 00000000000..675b03b6e94 --- /dev/null +++ "b/scripts/chrome/\350\257\264\346\230\216.txt" @@ -0,0 +1,27 @@ +------------------------------------------------------------ +本作品仅供交流体验使用,请在下载后24小时内删除。 +请勿用于商业用途,禁止任何形式二次打包或转载。 +------------------------------------------------------------ +由于原版Chrome不是太好用,所以我做了一个增强版,跟随稳定版更新。 + +下载地址:https://shuax.com/project/chrome/ + +增强功能: + 双击关闭标签页 + 保留最后标签页(防止关闭最后一个标签页时关闭浏览器,点X不行) + 鼠标悬停标签栏滚动 + 按住右键时滚轮滚动标签栏 + 移除flash锁区,移除2020年过期警告(是否加载还是要你自己处理) + 移除开发者模式警告 + 便携设计,程序放在App目录,数据放在Data目录不兼容原版数据,可以重装系统换电脑不丢数据) + 移除更新错误警告(因为是绿色版没有自动更新功能) + +解压后运行App/chrome.exe即可。 +由于是便携版,不会和其它版本冲突,不想用了可以直接删掉整个文件夹。 +升级只需要替换App文件夹即可。(推荐先把老版本App重命名为App2,然后放入新版App,运行测试无误后可以安全删除App2老版本,如果有问题也方便还原。) + +增强功能通过App/chrome++.dll实现,并修改了chrome.exe主程序,有可能会报毒。 + +鼠标手势推荐使用全局手势软件,比如MouseInc。 + +软件发现了问题欢迎加QQ群:703641632进行反馈。 diff --git a/scripts/cloudmusic/uninstall.bat b/scripts/cloudmusic/uninstall.bat new file mode 100644 index 00000000000..00088891395 --- /dev/null +++ b/scripts/cloudmusic/uninstall.bat @@ -0,0 +1,56 @@ +@ECHO OFF&(PUSHD "%~DP0")&(REG QUERY "HKU\S-1-5-19">NUL 2>&1)||( +powershell -Command "Start-Process '%~sdpnx0' -Verb RunAs"&&EXIT) + +taskkill /f /im cloudmusic* /t >NUL 2>NUL + +ver|findstr "\<6\.[0-9]\.[0-9][0-9]*\> \<10\.[0-9]\.[0-9][0-9]*\>" >NUL&&( +rd/s/q "%ProgramData%\Microsoft\Windows\Start Menu\Programs\网易云音乐"2>NUL +rd/s/q "%AppData%\Microsoft\Windows\Start Menu\Programs\网易云音乐"2>NUL +del /q "%UserProfile%\Desktop\网易云音乐.lnk" >NUL 2>NUL +del /q "%Public%\Desktop\网易云音乐.lnk" >NUL 2>NUL +rd/s/q "%ProgramData%\NetEaseWinDA2"2>NUL +rd/s/q "%LocalAppData%\Netease"2>NUL) + +ver|findstr "5\.[0-9]\.[0-9][0-9]*" >NUL&&( +rd/s/q "%UserProfile%\Local Settings\Application Data\Netease"2>NUL +rd/s/q "%AllUsersProfile%\Application Data\NetEaseWinDA2"2>NUL +rd/s/q "%AllUsersProfile%\「开始」菜单\程序\网易云音乐" 2>NUL +rd/s/q "%UserProfile%\「开始」菜单\程序\网易云音乐" 2>NUL +del /q "%AllUsersProfile%\桌面\网易云音乐.lnk" >NUL 2>NUL +del /q "%UserProfile%\桌面\网易云音乐.lnk" >NUL 2>NUL +) + +reg delete "HKLM\SOFTWARE\Netease" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Netease" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\*\shellex\ContextMenuHandlers\cloudmusic" /f >NUL 2>NUL +reg delete "HKCU\Software\Microsoft\Windows\CurrentVersion\Run" /f /v "cloudmusic" >NUL 2>NUL +reg delete "HKLM\Software\Microsoft\Windows\CurrentVersion\Run" /f /v "cloudmusic" >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\cloudmusic.exe" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\CloudMusic" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\CloudMusic" /f /reg:32 >NUL 2>NUL + +reg delete "HKLM\SOFTWARE\Classes\cloudmusic.aac" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\cloudmusic.ape" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\cloudmusic.cda" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\cloudmusic.cue" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\cloudmusic.flac" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\cloudmusic.m4a" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\cloudmusic.mp3" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\cloudmusic.ncm" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\cloudmusic.ogg" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\cloudmusic.wav" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\cloudmusic.wma" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\orpheus" /f >NUL 2>NUL + +CLS +ECHO.&ECHO 423down.com + +IF EXIST "Netease" ( + FOR /F "delims=*" %%a IN ('dir /a/b *.*^|findstr /v /i "Netease$"') DO ( + RD /S/Q "%%a" 2>NUL & DEL /F/Q "%%a" >NUL 2>NUL) + ) ELSE ( + PUSHD .. & RD /S/Q "%~DP0" >NUL 2>NUL) + +CLS +ECHO.&ECHO 完成 +ECHO.&ECHO Modded by www.423down.com diff --git a/scripts/create-font-manifest.ps1 b/scripts/create-font-manifest.ps1 new file mode 100644 index 00000000000..644cd4bee1a --- /dev/null +++ b/scripts/create-font-manifest.ps1 @@ -0,0 +1,5 @@ +$name = $args[0] +if ($args.Count -eq 2) { + Write-Host 'Please use only one argument'; Break +} +Copy-Item "$PSScriptRoot\..\font-manifest-template.json" "$PSScriptRoot\..\bucket\$name.json" -Force diff --git a/scripts/create-manifest.ps1 b/scripts/create-manifest.ps1 new file mode 100644 index 00000000000..7461993a870 --- /dev/null +++ b/scripts/create-manifest.ps1 @@ -0,0 +1,5 @@ +$name = $args[0] +if ($args.Count -eq 2) { + Write-Host 'Please use only one argument'; Break +} +Copy-Item "$PSScriptRoot\..\template.json" "$PSScriptRoot\..\bucket\$name.json" -Force diff --git a/scripts/du/du.ps1 b/scripts/du/du.ps1 new file mode 100644 index 00000000000..56597ee4f7d --- /dev/null +++ b/scripts/du/du.ps1 @@ -0,0 +1,16 @@ +param( + [Parameter(Mandatory)] + $Path, + [Parameter(Mandatory=$false)] + $Depth = 20 + ) + +$colItems = (Get-ChildItem $Path | Measure-Object -property length -sum) +"{0} -- {1:N2} MB" -f $Path, ($colItems.sum / 1MB) + +$colItems = (Get-ChildItem $Path -recurse -Depth $Depth | Where-Object {$_.PSIsContainer -eq $True} | Sort-Object) +foreach ($i in $colItems) +{ + $subFolderItems = (Get-ChildItem $i.FullName | Measure-Object -property length -sum) + "{0} -- {1:N2} MB" -f $i.FullName, ($subFolderItems.sum / 1MB) +} \ No newline at end of file diff --git a/scripts/eyeleo/langpack.zhcn.xml b/scripts/eyeleo/langpack.zhcn.xml new file mode 100644 index 00000000000..c77e241cd86 --- /dev/null +++ b/scripts/eyeleo/langpack.zhcn.xml @@ -0,0 +1,174 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/scripts/fiddle-everywhere/README-321.md b/scripts/fiddle-everywhere/README-321.md new file mode 100644 index 00000000000..0abb3cadf1e --- /dev/null +++ b/scripts/fiddle-everywhere/README-321.md @@ -0,0 +1,8 @@ +## Fiddle Everywhere 3.2.1 Crack + +- `FiddlerBackendSDK.dll`: `resources\app\out\WebServer` +- `main.304c864f4d0af6e9.js` / `main.157031b9c4f17398.js`: `resources\app\out\WebServer\ClientApp\dist` + +> 禁用更新 +> +> 修改 `resources/app/out/main.js`,搜索 `e.settingsService.get().autoUpdateSettings.disabled` 替换为 `true||e.settingsService.get().autoUpdateSettings.disabled`. diff --git a/scripts/fiddle-everywhere/README-330.md b/scripts/fiddle-everywhere/README-330.md new file mode 100644 index 00000000000..dad108f909f --- /dev/null +++ b/scripts/fiddle-everywhere/README-330.md @@ -0,0 +1,5 @@ +## Fiddle Everywhere 3.3.0 Crack + +- `main.js`: `resources\app\out` +- `Fiddler.WebUi.dll` / `FiddlerBackendSDK.dll`: `resources\app\out\WebServer` +- `main.8068c81c92a7126e.js` / `main.e5bf1b91c3997c53.js`: `resources\app\out\WebServer\ClientApp\dist` diff --git a/scripts/git/install-context.reg b/scripts/git/install-context.reg new file mode 100644 index 00000000000..0ea65b9a44b --- /dev/null +++ b/scripts/git/install-context.reg @@ -0,0 +1,51 @@ +Windows Registry Editor Version 5.00 + +; ----------------------------------------------------------------------------- +; context menu entry 'Git GUI Here' +; ----------------------------------------------------------------------------- + +[HKEY_CURRENT_USER\Software\Classes\Directory\background\shell\git_gui] +@="Git &GUI Here" +"Icon"="$git_root\\cmd\\git-gui.exe" + +[HKEY_CURRENT_USER\Software\Classes\Directory\background\shell\git_gui\command] +@="\"$git_root\\cmd\\git-gui.exe\" \"--working-dir\" \"%v.\"" + +[HKEY_CURRENT_USER\Software\Classes\Directory\shell\git_gui] +@="Git &GUI Here" +"Icon"="$git_root\\cmd\\git-gui.exe" + +[HKEY_CURRENT_USER\Software\Classes\Directory\shell\git_gui\command] +@="\"$git_root\\cmd\\git-gui.exe\" \"--working-dir\" \"%1\"" + +[HKEY_CURRENT_USER\Software\Classes\LibraryFolder\background\shell\git_gui] +@="Git &GUI Here" +"Icon"="$git_root\\cmd\\git-gui.exe" + +[HKEY_CURRENT_USER\Software\Classes\LibraryFolder\background\shell\git_gui\command] +@="\"$git_root\\cmd\\git-gui.exe\" \"--working-dir\" \"%v.\"" + +; ----------------------------------------------------------------------------- +; context menu entry 'Git Bash Here' +; ----------------------------------------------------------------------------- + +[HKEY_CURRENT_USER\Software\Classes\Directory\background\shell\git_shell] +@="Git Ba&sh Here" +"Icon"="$git_root\\git-bash.exe" + +[HKEY_CURRENT_USER\Software\Classes\Directory\background\shell\git_shell\command] +@="\"$git_root\\git-bash.exe\" \"--cd=%v.\"" + +[HKEY_CURRENT_USER\Software\Classes\Directory\shell\git_shell] +@="Git Ba&sh Here" +"Icon"="$git_root\\git-bash.exe" + +[HKEY_CURRENT_USER\Software\Classes\Directory\shell\git_shell\command] +@="\"$git_root\\git-bash.exe\" \"--cd=%1\"" + +[HKEY_CURRENT_USER\Software\Classes\LibraryFolder\background\shell\git_shell] +@="Git Ba&sh Here" +"Icon"="$git_root\\git-bash.exe" + +[HKEY_CURRENT_USER\Software\Classes\LibraryFolder\background\shell\git_shell\command] +@="\"$git_root\\git-bash.exe\" \"--cd=%v.\"" diff --git a/scripts/git/install-file-associations.reg b/scripts/git/install-file-associations.reg new file mode 100644 index 00000000000..5d3c665064e --- /dev/null +++ b/scripts/git/install-file-associations.reg @@ -0,0 +1,39 @@ +Windows Registry Editor Version 5.00 + +; ----------------------------------------------------------------------------- +; associate .git* configuration files with the default text editor +; ----------------------------------------------------------------------------- + +[HKEY_CURRENT_USER\Software\Classes\.gitattributes] +@="txtfile" +"Content Type"="text/plain" +"PerceivedType"="text" + +[HKEY_CURRENT_USER\Software\Classes\.gitignore] +@="txtfile" +"Content Type"="text/plain" +"PerceivedType"="text" + +[HKEY_CURRENT_USER\Software\Classes\.gitmodules] +@="txtfile" +"Content Type"="text/plain" +"PerceivedType"="text" + +; ----------------------------------------------------------------------------- +; associate '.sh' files to be run with git bash +; ----------------------------------------------------------------------------- + +[HKEY_CURRENT_USER\Software\Classes\.sh] +@="sh_auto_file" + +[HKEY_CURRENT_USER\Software\Classes\sh_auto_file] +@="Shell Script" + +[HKEY_CURRENT_USER\Software\Classes\sh_auto_file\DefaultIcon] +@="%SystemRoot%\\System32\\shell32.dll,-153" + +[HKEY_CURRENT_USER\Software\Classes\sh_auto_file\shell\open\command] +@="\"$git_root\\git-bash.exe\" --no-cd \"%L\" %*" + +[HKEY_CURRENT_USER\Software\Classes\sh_auto_file\ShellEx\DropHandler] +@="{60254CA5-953B-11CF-8C96-00AA00B8708C}" diff --git a/scripts/git/uninstall-context.reg b/scripts/git/uninstall-context.reg new file mode 100644 index 00000000000..5b16023125e --- /dev/null +++ b/scripts/git/uninstall-context.reg @@ -0,0 +1,23 @@ +Windows Registry Editor Version 5.00 + +; ----------------------------------------------------------------------------- +; undo: context menu entry 'Git GUI Here' +; ----------------------------------------------------------------------------- + +[-HKEY_CURRENT_USER\Software\Classes\Directory\background\shell\git_gui] +[-HKEY_CURRENT_USER\Software\Classes\Directory\background\shell\git_gui\command] +[-HKEY_CURRENT_USER\Software\Classes\Directory\shell\git_gui] +[-HKEY_CURRENT_USER\Software\Classes\Directory\shell\git_gui\command] +[-HKEY_CURRENT_USER\Software\Classes\LibraryFolder\background\shell\git_gui] +[-HKEY_CURRENT_USER\Software\Classes\LibraryFolder\background\shell\git_gui\command] + +; ----------------------------------------------------------------------------- +; undo: context menu entry 'Git Bash Here' +; ----------------------------------------------------------------------------- + +[-HKEY_CURRENT_USER\Software\Classes\Directory\background\shell\git_shell] +[-HKEY_CURRENT_USER\Software\Classes\Directory\background\shell\git_shell\command] +[-HKEY_CURRENT_USER\Software\Classes\Directory\shell\git_shell] +[-HKEY_CURRENT_USER\Software\Classes\Directory\shell\git_shell\command] +[-HKEY_CURRENT_USER\Software\Classes\LibraryFolder\background\shell\git_shell] +[-HKEY_CURRENT_USER\Software\Classes\LibraryFolder\background\shell\git_shell\command] diff --git a/scripts/git/uninstall-file-associations.reg b/scripts/git/uninstall-file-associations.reg new file mode 100644 index 00000000000..18799f931d7 --- /dev/null +++ b/scripts/git/uninstall-file-associations.reg @@ -0,0 +1,19 @@ +Windows Registry Editor Version 5.00 + +; ----------------------------------------------------------------------------- +; undo: associate .git* configuration files with the default text editor +; ----------------------------------------------------------------------------- + +[-HKEY_CURRENT_USER\Software\Classes\.gitattributes] +[-HKEY_CURRENT_USER\Software\Classes\.gitignore] +[-HKEY_CURRENT_USER\Software\Classes\.gitmodules] + +; ----------------------------------------------------------------------------- +; undo: associate '.sh' files to be run with git bash +; ----------------------------------------------------------------------------- + +[-HKEY_CURRENT_USER\Software\Classes\.sh] +[-HKEY_CURRENT_USER\Software\Classes\sh_auto_file] +[-HKEY_CURRENT_USER\Software\Classes\sh_auto_file\DefaultIcon] +[-HKEY_CURRENT_USER\Software\Classes\sh_auto_file\shell\open\command] +[-HKEY_CURRENT_USER\Software\Classes\sh_auto_file\ShellEx\DropHandler] diff --git a/scripts/haoziprename/install.bat b/scripts/haoziprename/install.bat new file mode 100644 index 00000000000..13453cf6181 --- /dev/null +++ b/scripts/haoziprename/install.bat @@ -0,0 +1,19 @@ +@ECHO OFF&PUSHD %~DP0 &TITLE 绿化 + +>NUL 2>&1 REG.exe query "HKU\S-1-5-19" || ( + ECHO SET UAC = CreateObject^("Shell.Application"^) > "%TEMP%\GetAdmin.vbs" + ECHO UAC.ShellExecute "%~f0", "%1", "", "runas", 1 >> "%TEMP%\GetAdmin.vbs" + "%TEMP%\GetAdmin.vbs" + DEL /f /q "%TEMP%\GetAdmin.vbs" 2>NUL + Exit /b +) + +:Add +md "%APPDATA%\HaoZip">NUL 2>NUL +copy Config\HaoZip.hzc "%APPDATA%\HaoZip">NUL 2>NUL +copy Config\HaoZip.hzv "%APPDATA%\HaoZip">NUL 2>NUL +copy Config\HaoZip.stat "%APPDATA%\HaoZip">NUL 2>NUL +echo.>"%APPDATA%\HaoZip\update" 2>NUL +attrib +r "%APPDATA%\HaoZip\update">NUL 2>NUL +regsvr32 /s HaoZipExt.dll +exit diff --git a/scripts/haoziprename/uninstall.bat b/scripts/haoziprename/uninstall.bat new file mode 100644 index 00000000000..4ac53fa8c1e --- /dev/null +++ b/scripts/haoziprename/uninstall.bat @@ -0,0 +1,17 @@ +@ECHO OFF&PUSHD %~DP0 &TITLE 卸载 + +>NUL 2>&1 REG.exe query "HKU\S-1-5-19" || ( + ECHO SET UAC = CreateObject^("Shell.Application"^) > "%TEMP%\GetAdmin.vbs" + ECHO UAC.ShellExecute "%~f0", "%1", "", "runas", 1 >> "%TEMP%\GetAdmin.vbs" + "%TEMP%\GetAdmin.vbs" + DEL /f /q "%TEMP%\GetAdmin.vbs" 2>NUL + Exit /b +) + +:Remove +regsvr32 /s /u HaoZipExt.dll +rd /s /q "%APPDATA%\HaoZip" 2>NUL +reg delete HKCU\Software\2345.com /f >NUL 2>NUL +taskkill /f /im explorer.exe +start explorer +exit diff --git a/scripts/hash.sh b/scripts/hash.sh new file mode 100644 index 00000000000..5b7e2c39ce4 --- /dev/null +++ b/scripts/hash.sh @@ -0,0 +1,15 @@ +#!/bin/sh + +cd $@ +# DOS to Unix +vim install.bat -c "set ff=unix" -c ":wq" +vim uninstall.bat -c "set ff=unix" -c ":wq" +sha256sum *.bat + +# Unix to DOS +# sed -i 's/$/\r/' $@ +# vim install.bat -c "set ff=dos" -c ":wq" +# vim uninstall.bat -c "set ff=dos" -c ":wq" +# sha256sum *.bat + +cd .. diff --git a/scripts/hotkeyp/hotkeyp.htk b/scripts/hotkeyp/hotkeyp.htk new file mode 100644 index 00000000000..6b024d8ec2e --- /dev/null +++ b/scripts/hotkeyp/hotkeyp.htk @@ -0,0 +1,403 @@ +hotKeys7 67 1 +新建标签页 + +\Ctrl\T + + +3866625 112 0 0 1 0 27 0 0 +恢复关闭标签页 + +\Ctrl\Shift\T + + +3866625 112 4 0 1 0 27 0 0 +当前标签页右侧打开新标签页(需要扩展) + +\Alt\Shift\6 firefox.exe|chrome.exe|msedge.exe + + +3932161 113 0 0 1 0 74 0 0 +最近标签页切换(需要扩展) + +\Alt\X firefox.exe|chrome.exe|msedge.exe + + +3997697 114 0 0 1 0 74 0 0 +复制标签页(需要扩展) + +\Alt\Shift\7 firefox.exe|chrome.exe|msedge.exe + + +4063233 115 0 0 1 0 74 0 0 +-------------------------- + +\Ctrl\W + + +0 0 0 0 1 0 27 0 0 +关闭当前标签页 + +\Ctrl\W + + +3866625 112 1 0 1 0 27 0 0 +关闭右侧标签页(需要扩展) + +\Alt\Shift\0 + + +540803073 113 1 0 1 0 27 0 0 +关闭其他标签页(需要扩展) + +\Alt\Shift\9 + + +540868609 114 1 0 1 0 27 0 0 +-------------------------- + +\Ctrl\W + + +0 0 0 0 1 0 27 0 0 +关闭窗口(需要二次确认) + + + + +1048577 81 2 0 1 8 9 0 0 +Ctrl+9(最后一个标签页) + +\Ctrl\9 + + +131073 49 6 0 1 0 27 0 0 + + + + + +539557889 192 2 0 1 0 101 0 0 +-------------------------- +explorer.exe + + + +0 0 0 0 1 0 -1 0 0 + + + + + +558366721 38 5 0 1 0 13 0 0 + + + + + +558891009 40 5 0 1 0 14 0 0 + + + + + +558891009 40 7 0 1 0 17 0 0 +-------------------------- +explorer.exe + + + +0 0 0 0 1 0 -1 0 0 +向上 + +\Up + + +538378241 73 5 0 1 0 27 0 0 +向下 + +\Down + + +539295745 75 5 0 1 0 27 0 0 +向左 + +\Left + + +539230209 74 5 0 1 0 27 0 0 +向右 + +\Right + + +539361281 76 5 0 1 0 27 0 0 +向左一个单词 + +\Ctrl\Left + + +538312705 85 5 0 1 0 27 0 0 +向右一个单词 + +\Ctrl\Right + + +538443777 79 5 0 1 0 27 0 0 +-------------------------- +explorer.exe + + + +0 0 0 0 1 0 -1 0 0 +向上选择 + +\Shift\Up + + +538378241 73 7 0 1 0 27 0 0 +向右选择 + +\Shift\Right + + +539361281 76 7 0 1 0 27 0 0 +向下选择 + +\Shift\Down + + +539295745 75 7 0 1 0 27 0 0 +向左选择 + +\Shift\Left + + +539230209 74 7 0 1 0 27 0 0 +向左选择一个单词 + +\Shift\Ctrl\Left + + +538312705 85 7 0 1 0 27 0 0 +向右选择一个单词 + +\Shift\Ctrl\Right + + +538443777 79 7 0 1 0 27 0 0 +-------------------------- +explorer.exe + + + +0 0 0 0 1 0 -1 0 0 +向左删除 + +\backspace + + +539164673 72 5 0 1 0 27 0 0 +向左删除 + +\backspace + + +539164673 72 7 0 1 0 27 0 0 +向右删除 + +\delete + + +539426817 186 5 0 1 0 27 0 0 +向右删除 + +\delete + + +539426817 186 7 0 1 0 27 0 0 +向右删除 + +\delete + + +539492353 222 5 0 1 0 27 0 0 +向右删除 + +\delete + + +539492353 222 7 0 1 0 27 0 0 +-------------------------- +explorer.exe + + + +0 0 0 0 1 0 -1 0 0 +回车 + +\enter + + +3735553 32 6 0 1 0 27 0 0 +回车 + +\enter + + +540606465 32 5 0 1 0 27 0 0 +回车 + +\enter + + +3735553 229 4 0 1 0 27 0 0 +-------------------------- +explorer.exe + + + +0 0 0 0 1 0 -1 0 0 +Ditto +D:\Office\Ditto\Ditto.exe + + + +537001985 49 5 0 1 0 -1 0 0 +天若OCR文字识别 +D:\Office\天若OCR文字识别\天若OCR文字识别.exe + + + +537067521 50 5 0 1 0 -1 0 0 +FSCapture +D:\Internet\RunningCheese Firefox V10\Profiles\V10\chrome\Local\FSCapture\FSCapture.exe + + + +537133057 51 5 0 1 0 -1 0 0 +ScreenToGif +D:\Internet\RunningCheese Firefox V10\Profiles\V10\chrome\Local\ScreenToGif.exe + + + +537198593 52 5 0 1 0 -1 0 0 +欧路词典 +D:\Education\Eudic\eudic.exe + + + +537264129 53 5 0 1 0 -1 0 0 +-------------------------- +explorer.exe + + + +0 0 0 0 1 0 -1 0 0 +PPT +D:\Program Files\Microsoft Office\root\Office16\POWERPNT.EXE + + + +1048577 81 5 0 1 0 -1 0 0 +Windows To-do +explorer.exe +shell:AppsFolder\Microsoft.Todos_8wekyb3d8bbwe!App + + +1114113 87 5 0 1 0 -1 0 0 +Excel +D:\Program Files\Microsoft Office\root\Office16\EXCEL.EXE + + + +538050561 69 5 0 1 0 -1 0 0 +RSS +D:\Program Files\irreader\irreader.exe + + + +538116097 82 5 0 1 33 -1 0 0 +Typora +D:\Program Files\Typora\Typora.exe + + + +538181633 84 5 0 1 0 -1 0 0 +-------------------------- +explorer.exe + + + +0 0 0 0 1 0 -1 0 0 +Snapshot +D:\Internet\RunningCheese Firefox V10\Profiles\V10\chrome\Local\Snapshot.exe + + + +538836993 65 5 0 1 0 -1 0 0 +网易云音乐 +D:\Internet\CloudMusic\cloudmusic.exe + + + +538902529 83 5 0 1 0 -1 0 0 +IDM +D:\Internet\IDM\IDMan.exe + + + +538968065 68 5 0 1 0 -1 0 0 +资源管理器 + +\win\1 + + +539033601 70 5 0 1 0 27 0 0 +邮箱 +D:\Internet\邮箱大师\MailMaster\Application\mailmaster.exe + + + +539099137 71 5 0 1 1 -1 0 0 +-------------------------- +explorer.exe + + + +0 0 0 0 1 0 -1 0 0 +Xmind +D:\Program Files\XMind ZEN\XMind ZEN.exe + + + +539820033 88 5 0 1 0 -1 0 0 +Sublime Text +D:\Office\Sublime Text 3\sublime_text.exe + + + +539885569 67 5 0 1 0 -1 0 0 +WeChat +D:\Internet\WeChat\WeChat.exe + + + +539951105 86 5 0 1 0 -1 0 0 +浏览器 +D:\Internet\RunningCheese Firefox V10\Firefox\firefox.exe + + + +540016641 66 5 0 1 0 -1 0 0 +-------------------------- +explorer.exe + + + +0 0 0 0 1 0 -1 0 0 +闹钟 +explorer.exe +shell:AppsFolder\Microsoft.WindowsAlarms_8wekyb3d8bbwe!App + + +0 0 0 0 1 1 -1 0 0 diff --git a/scripts/hotkeyp/readme.md b/scripts/hotkeyp/readme.md new file mode 100644 index 00000000000..53bbf72b494 --- /dev/null +++ b/scripts/hotkeyp/readme.md @@ -0,0 +1,55 @@ +# HotkeyP + +## 软件介绍 + +软件名称:HotkeyP + +软件官网: +http://petr.lastovicka.sweb.cz/others.html#hotkey + +使用手册: +http://petr.lastovicka.sweb.cz/HotkeyP-help.html + +使用参考: +https://mp.weixin.qq.com/s/AlqczP-3DHiG7VKHIXyWPg + +PS:软件占用极小,建议加入开机启动。 + +注意: +你可以的软件里导入奶酪的配置,即 “hotkeyp\_奶酪配置.htk” + +## 使用方法 + +支持的修饰键包括:Ctrl, Shift, Alt, Win + +支持应用程序,文件夹,网页地址,或者内部命令 + +支持环境变量,比如 %SystemRoot%、%HotkeyP% + +勾选“允许运行多实例”的话,软件就会开启多个窗口,如果不勾选的话,则会变成切换模式 + +## 鼠标快捷键 + +L、R、M、4、5、Up、Down、Left、 Right + +分别对应: + +鼠标左键、鼠标右键、鼠标中键、鼠标第四键、鼠标第五键、滚轮向上、滚轮向下、滚轮向左、滚轮向右 + +## 宏命令 + +宏命令这样写,比如 Win+S 键写成:\win\s + +列表: + +\esc, \tab, \backspace, \enter, \space, \left, \right, \up, \down, \ins, \del, \home, \end, \pageup, \pagedown, \f1, \f2, ..., \shift, \rshift, \ctrl, \rctrl, \alt, \ralt, \win, \rwin, \apps, \capslock, \scrolllock, \numlock, \pause, \printscreen, \divide, \multiply, \add, \subtract, \decimal, \0, \1, ..., \num0, \num1, ..., \A, \B, ..., \back, \forward, \refresh, \search, \favorites, \browser, \mail, \power, \volume_down, \volume_up, \mute, \play_pause, \stop, \prev_track, \next_track, \media_select, \launch_app1, \launch_app2, \lbutton, \rbutton, \mbutton, \xbutton1, \xbutton2, \wheelup, \wheeldown, \wheelleft, \wheelright, \doubleclick, \sleep, \rep, \xAB. + +## 活动窗口执行按键 + +如果不想用全局快捷键,而只对某些软件才有效的话,可以用 “活动窗口执行按键” 命令。 + +参数这样写: + +\Alt\Shift\6 firefox.exe|chrome.exe|msedge.exe + +前面是按键,后面是生效的软件,| 的意思就“或者”。 diff --git a/scripts/hotkeyp/start-hotkeyp.ps1 b/scripts/hotkeyp/start-hotkeyp.ps1 new file mode 100644 index 00000000000..4b8a9186ba1 --- /dev/null +++ b/scripts/hotkeyp/start-hotkeyp.ps1 @@ -0,0 +1 @@ +sudo Start-Process "$(scoop prefix hotkeyp)\HotkeyP.exe" -WorkingDirectory "$(scoop prefix hotkeyp)" -WindowStyle Hidden diff --git a/scripts/idm/idm-custom-settings.reg b/scripts/idm/idm-custom-settings.reg new file mode 100644 index 00000000000..7a2ddb4b346 --- /dev/null +++ b/scripts/idm/idm-custom-settings.reg @@ -0,0 +1,24 @@ +Windows Registry Editor Version 5.00 + +[HKEY_CURRENT_USER\Software\DownloadManager] +;选项-常规: 取消勾选“监视基于IE内核的浏览器的点击事件” +"RunIEMonitor"=dword:00000000 + +;选项-文件类型: 自定义“自动开始下载下列类型的文件” +"Extensions"="RAR ZIP 7Z EXE MSI APK MP4 MKV ESD ISO" + +;选项-文件类型-下列地址不要自动开始下载: 取消勾选“当您两次取消同一下载事件的时候,显示该对话框以便将下载地址加入排除列表” +"DontShowDlgOnCancel"=dword:00000001 + +;选项-下载: 取消勾选“显示下载完成对话框” +"ComplDlgShowing"=dword:00000000 + +;选项-下载: 取消勾选“在显示‘下载文件信息’对话框时就开始下载文件” +"startImmediately"=dword:00000000 + +;选项-代理服务器: 使用系统设置 +"nProxyMode"=dword:00000002 + +[HKEY_CURRENT_USER\Software\DownloadManager\DwnlSelPanel] +;选项-常规-自定义浏览器中的IDM下载浮动条-对于选定的文件: 点选“针对选中的链接不显示下载浮动条” +"PanelMode"=dword:00000002 diff --git a/scripts/idm/install.bat b/scripts/idm/install.bat new file mode 100644 index 00000000000..632cc2edcd9 --- /dev/null +++ b/scripts/idm/install.bat @@ -0,0 +1,44 @@ +@ECHO OFF&PUSHD %~DP0 &TITLE 绿化 + +>NUL 2>&1 REG.exe query "HKU\S-1-5-19" || ( + ECHO SET UAC = CreateObject^("Shell.Application"^) > "%TEMP%\GetAdmin.vbs" + ECHO UAC.ShellExecute "%~f0", "%1", "", "runas", 1 >> "%TEMP%\GetAdmin.vbs" + "%TEMP%\GetAdmin.vbs" + DEL /f /q "%TEMP%\GetAdmin.vbs" 2>NUL + Exit /b +) + +:Setup +taskkill /f /im IDM* >NUL 2>NUL +taskkill /f /im IEMon* >NUL 2>NUL + +reg delete "HKLM\SOFTWARE\Internet Download Manager" /f>NUL 2>NUL +reg delete "HKLM\SOFTWARE\Wow6432Node\Internet Download Manager" /f>NUL 2>NUL + +::导入注册信息 +reg add "HKCU\SOFTWARE\DownloadManager" /f /v "FName" /t REG_SZ /d "Tonec" >NUL +reg add "HKCU\SOFTWARE\DownloadManager" /f /v "LName" /t REG_SZ /d "Inc." >NUL +reg add "HKCU\SOFTWARE\DownloadManager" /f /v "Email" /t REG_SZ /d "info@tonec.com" >NUL +reg add "HKCU\SOFTWARE\DownloadManager" /f /v "Serial" /t REG_SZ /d "MJHKU-6DW22-16UZ6-LIQ5T" >NUL + +:: Windows All +reg add "HKCU\Software\DownloadManager" /f /v idmvers >NUL +reg add "HKCU\Software\DownloadManager" /f /v ToolbarStyle /d "H3M Glossy" >NUL +reg add "HKCU\Software\DownloadManager" /f /v TipStartUp /t REG_DWORD /d 1 >NUL +reg add "HKCU\Software\DownloadManager" /f /v LaunchOnStart /t REG_DWORD /d 0 >NUL +reg add "HKCU\Software\DownloadManager" /f /v startImmediately /t REG_DWORD /d 0 >NUL +reg add "HKCU\Software\DownloadManager" /f /v FSSettingsChecked /t REG_DWORD /d 1 >NUL +reg add "HKCU\Software\DownloadManager\FoldersTree" /f /v AFD /t REG_DWORD /d 1 >NUL + +Start /Wait /B "" "%~dp0IDMan.exe" /rtr /setlngid 2052 /fulllngfile idm_chn2.lng + +:: Windows NT6 +If Exist "%Public%" idmBroker.exe -RegServer +If Exist "%Public%" Uninstall.exe -instdriv + +If Exist "%Public%" Net Start IDMWFP >NUL 2>NUL +If Exist "%Public%" Rundll32 setupapi.dll,InstallHinfSection DefaultInstall 128 .\idmwfp.inf + +:: Windows NT +If Not Exist "%Public%" Net Start idmtdi >NUL 2>NUL +If Not Exist "%Public%" Rundll32 setupapi.dll,InstallHinfSection DefaultInstall 128 .\idmtdi.inf diff --git a/scripts/idm/uninstall.bat b/scripts/idm/uninstall.bat new file mode 100644 index 00000000000..b23a22d64d3 --- /dev/null +++ b/scripts/idm/uninstall.bat @@ -0,0 +1,39 @@ +@ECHO OFF&PUSHD %~DP0 &TITLE 卸载 + +>NUL 2>&1 REG.exe query "HKU\S-1-5-19" || ( + ECHO SET UAC = CreateObject^("Shell.Application"^) > "%TEMP%\GetAdmin.vbs" + ECHO UAC.ShellExecute "%~f0", "%1", "", "runas", 1 >> "%TEMP%\GetAdmin.vbs" + "%TEMP%\GetAdmin.vbs" + DEL /f /q "%TEMP%\GetAdmin.vbs" 2>NUL + Exit /b +) + +:Uninst +taskkill /f /im IDM* >NUL 2>NUL +taskkill /f /im IEMon* >NUL 2>NUL + +regsvr32 /s /u idmfsa.dll downlWithIDM.dll +regsvr32 /s /u IDMIECC.dll IDMGetAll.dll IDMShellExt.dll +If Exist "%WinDir%\SysWOW64" regsvr32 /s /u IDMIECC64.dll +If Exist "%WinDir%\SysWOW64" regsvr32 /s /u downlWithIDM64.dll +If Exist "%WinDir%\SysWOW64" regsvr32 /s /u IDMGetAll64.dll +If Exist "%WinDir%\SysWOW64" regsvr32 /s /u IDMShellExt64.dll + +If Exist "%Public%" idmBroker.exe -unRegServer +If Exist "%Public%" Uninstall.exe -uninstdriv + +If Exist "%Public%" Net Stop IDMWFP >NUL 2>NUL +If Not Exist "%Public%" Net Stop IDMTDI >NUL 2>NUL + +If Exist "%Public%" Rundll32 setupapi.dll,InstallHinfSection DefaultUninstall 128 .\idmwfp.inf +If Not Exist "%Public%" Rundll32 setupapi.dll,InstallHinfSection DefaultUninstall 128 .\idmtdi.inf + +rd/s/q "%AppData%\IDM" 2>NUL +rd/s/q "%ProgramData%\IDM" 2>NUL +rd/s/q "%AllUsersProfile%\Application Data\IDM" 2>NUL + +reg delete "HKLM\SOFTWARE\Internet Download Manager" /f>NUL 2>NUL +reg delete "HKLM\SOFTWARE\Wow6432Node\Internet Download Manager" /f>NUL 2>NUL + +taskkill /f /im explorer.exe >NUL 2>NUL & start explorer +reg delete "HKCU\Software\DownloadManager" /f>NUL 2>NUL diff --git a/scripts/install_cudnn.ps1 b/scripts/install_cudnn.ps1 new file mode 100644 index 00000000000..418420464bf --- /dev/null +++ b/scripts/install_cudnn.ps1 @@ -0,0 +1,5 @@ +if (!$env:CUDA_PATH) { + Write-Error "Environment variable 'CUDA_PATH' not found." + return +} +sudo Copy-Item -LiteralPath (Get-ChildItem -LiteralPath $dir).FullName -Destination $env:CUDA_PATH -Recurse -Force diff --git a/scripts/install_keypirinha_plugin.ps1 b/scripts/install_keypirinha_plugin.ps1 new file mode 100644 index 00000000000..88978cf73d3 --- /dev/null +++ b/scripts/install_keypirinha_plugin.ps1 @@ -0,0 +1,3 @@ +$packageName = '{0}.keypirinha-package' -f ($app -replace '^keypirinha-', '') +$packageDir = '{0}/../portable/Profile/Packages' -f (PSWinUtil\Find-Path -Name 'keypirinha.exe' -Program -Strict) +Move-Item -LiteralPath ('{0}/{1}' -f $dir, $packageName) -Destination $packageDir diff --git a/scripts/install_youtube-dl-animelover1984.ps1 b/scripts/install_youtube-dl-animelover1984.ps1 new file mode 100644 index 00000000000..c19c29e5087 --- /dev/null +++ b/scripts/install_youtube-dl-animelover1984.ps1 @@ -0,0 +1,15 @@ +python3.exe -m pip install requests mutagen websockets git+https://github.com/animelover1984/youtube-dl + +Get-Command -Name "pip.exe" | +Select-Object -ExpandProperty Source | +Split-Path -Parent | +Get-ChildItem -LiteralPath { $_ } -File | +Where-Object { $_.Name -in "youtube-dl.exe", "youtube-dl-script.py" } | +ForEach-Object { + $aRenameFile = $_ + $aNewName = $aRenameFile.Name -replace 'youtube-dl', 'youtube-dl-animelover1984' + + Rename-Item -LiteralPath $aRenameFile.FullName -NewName $aNewName +} + +Write-Host "The exe file name is youtube-dl-animelover1984.exe." diff --git a/scripts/jetbrain-portabler.ps1 b/scripts/jetbrain-portabler.ps1 new file mode 100644 index 00000000000..58188c1a6bd --- /dev/null +++ b/scripts/jetbrain-portabler.ps1 @@ -0,0 +1,29 @@ +<# +.SYNOPSIS + Universal portable mode enabler + IDE subdirectory is needed. +.PARAMETER Directory + Current '$dir' of application +.PARAMETER Persist + Persist directory of application +#> +param([Parameter(Mandatory)][String] $Directory, [Parameter(Mandatory)][String] $Persist) + +$properties = Join-Path 'IDE' 'bin\idea.properties' + +if (-not (Join-Path $Persist $properties | Test-Path)) { + Write-Host 'File' $properties 'does not exists. Creating.' -ForegroundColor Yellow + + $fullProp = Join-path $Directory $properties + $currentForward = (Split-Path $Directory | Join-Path -ChildPath 'current') -replace '\\', '/' + $profileDir = "$currentForward/profile" + + $CONT = Get-Content $fullProp + # Set portable configuration + $CONT = $CONT -replace '^#\s*(idea.config.path=).*$', "`$1$profileDir/config" + $CONT = $CONT -replace '^#\s*(idea.system.path=).*$', "`$1$profileDir/system" + $CONT = $CONT -replace '^#\s*(idea.plugins.path=).*$', '$1${idea.config.path}/plugins' + $CONT = $CONT -replace '^#\s*(idea.log.path=).*$', '$1${idea.system.path}/log' + + Set-Content $fullProp $CONT -Encoding Ascii -Force +} diff --git a/scripts/kuwo/install.bat b/scripts/kuwo/install.bat new file mode 100644 index 00000000000..e6de7a09bfd --- /dev/null +++ b/scripts/kuwo/install.bat @@ -0,0 +1,42 @@ +@ECHO OFF&(PUSHD "%~DP0")&(REG QUERY "HKU\S-1-5-19">NUL 2>&1)||( +powershell -Command "Start-Process '%~sdpnx0' -Verb RunAs"&&EXIT) + +taskkill /f /im KwW* >NUL 2>NUL +taskkill /f /im KwMusic* >NUL 2>NUL +taskkill /f /im KwWebKit* >NUL 2>NUL +taskkill /f /im KwService* >NUL 2>NUL +taskkill /f /im runshelldraw* >NUL 2>NUL +taskkill /f /im WriteMbox.exe >NUL 2>NUL +taskkill /f /im KwKnowSong.exe >NUL 2>NUL + +rd/s/q "%temp%\KWMUSIC" 2>NUL +del/f/s/q "%temp%\kuwo*" >NUL 2>NUL +del/f/s/q "%temp%\KwBindApp*" >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" /f /v "kwmusic" >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" /f /v "kwmusic" >NUL 2>NUL +reg delete "HKLM\SOFTWARE\\Microsoft\Windows\CurrentVersion\Run" /f /v "kwmusic" /reg:32 >NUL 2>NUL + +ver|findstr "5\.[0-9]\.[0-9][0-9]*" >NUL && ( +rd /s/q "%AllUsersProfile%\Application Data\kuwodata\kwshow" 2>NUL +rd /s/q "%AllUsersProfile%\Application Data\kuwodata\kwmusic2013\Update" 2>NUL +del/f/q "%AllUsersProfile%\Application Data\kuwodata\kwmusic2013\ModuleData\ModMusicTool\conf.txt" >NUL 2>NUL +md "%AllUsersProfile%\Application Data\kuwodata\kwmusic2013\ModuleData\ModMusicTool" 2>NUL +echo f|copy /y "Bin\Data\conf.txt" "%AllUsersProfile%\Application Data\kuwodata\kwmusic2013\ModuleData\ModMusicTool" >NUL 2>NUL +attrib +r "%AllUsersProfile%\Application Data\kuwodata\kwmusic2013\ModuleData\ModMusicTool\conf.txt" 2>NUL +echo. >"%AllUsersProfile%\Application Data\kuwodata\kwmusic2013\Update" 2>NUL +echo. >"%AllUsersProfile%\Application Data\kuwodata\kwshow" 2>NUL +) + +ver|findstr "\<6\.[0-9]\.[0-9][0-9]*\> \<10\.[0-9]\.[0-9][0-9]*\>" >NUL && ( +rd /s/q "%ProgramData%\kuwodata\kwshow" 2>NUL +rd /s/q "%ProgramData%\kuwodata\kwmusic2013\Update" 2>NUL +del/f/q "%ProgramData%\kuwodata\kwmusic2013\ModuleData\ModMusicTool\conf.txt" >NUL 2>NUL +md "%ProgramData%\Kuwodata\kwmusic2013\ModuleData\ModMusicTool" 2>NUL +echo f|copy /y "Bin\Data\conf.txt" "%ProgramData%\Kuwodata\kwmusic2013\ModuleData\ModMusicTool" >NUL 2>NUL +echo. >"%ProgramData%\kuwodata\kwmusic2013\Update" 2>NUL +echo. >"%ProgramData%\kuwodata\kwshow" 2>NUL +) + +CLS +ECHO.&ECHO 完成 +ECHO.&ECHO Modded by www.423down.com diff --git a/scripts/kuwo/uninstall.bat b/scripts/kuwo/uninstall.bat new file mode 100644 index 00000000000..120580a9634 --- /dev/null +++ b/scripts/kuwo/uninstall.bat @@ -0,0 +1,88 @@ +@ECHO OFF&(PUSHD "%~DP0")&(REG QUERY "HKU\S-1-5-19">NUL 2>&1)||( +powershell -Command "Start-Process '%~sdpnx0' -Verb RunAs"&&EXIT) + +taskkill /f /im KwW* >NUL 2>NUL +taskkill /f /im KwMusic* >NUL 2>NUL +taskkill /f /im KwWebKit* >NUL 2>NUL +taskkill /f /im KwService* >NUL 2>NUL +taskkill /f /im runshelldraw* >NUL 2>NUL +taskkill /f /im WriteMbox.exe >NUL 2>NUL +taskkill /f /im KwKnowSong.exe >NUL 2>NUL + +rd/s/q "%temp%\KWMUSIC" 2>NUL +rd/s/q "%AppData%\kuwodata" 2>NUL +rd/s/q "%LocalAppData%\kwmusic" 2>NUL +ver|findstr "5\.[0-9]\.[0-9][0-9]*" >NUL && ( +rd/s/q "%AllUsersProfile%\Application Data\Kuwodata" 2>NUL +rd/s/q "%UserProfile%\Local Settings\Application Data\kwmusic" 2>NUL +del/q "%UserProfile%\桌面\酷我音乐.lnk" >NUL 2>NUL +del/q "%AllUsersProfile%\桌面\酷我音乐.lnk" >NUL 2>NUL +rd/s/q "%UserProfile%\「开始」菜单\程序\酷我音乐"2>NUL +rd/s/q "%AllUsersProfile%\「开始」菜单\程序\酷我音乐"2>NUL +) +ver|findstr "\<6\.[0-9]\.[0-9][0-9]*\> \<10\.[0-9]\.[0-9][0-9]*\>" >NUL && ( +rd/s/q "%ProgramData%\kuwodata" 2>NUL +rd/s/q "%UserProfile%\AppData\Local\kwmusic" 2>NUL +del/q "%Public%\Desktop\酷我音乐.lnk" >NUL 2>NUL +del/q "%UserProfile%\Desktop\酷我音乐.lnk" >NUL 2>NUL +rd/s/q "%AppData%\Microsoft\Windows\Start Menu\Programs\酷我音乐"2>NUL +rd/s/q "%ProgramData%\Microsoft\Windows\Start Menu\Programs\酷我音乐"2>NUL +) +reg delete "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" /f /v "kwmusic" >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" /f /v "kwmusic" >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" /f /v "kwmusic" /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\KwMusic" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\KwMusic" /f /reg:32 >NUL 2>NUL + +reg delete "HKLM\SOFTWARE\Classes\CLSID\{C190FFCA-1E3C-4C52-AAFF-01AD4CF394E0}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Directory\shell\kwopen" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Directory\shell\kwplaylist" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\kuwo" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Clients\Media\KwMusic" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Clients\Media\KwMusic" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\kwfile_AAC" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\kwfile_AC3" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\kwfile_ape" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\kwfile_CDA" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\kwfile_CUE" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\kwfile_DFF" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\kwfile_dks" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\kwfile_DSF" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\kwfile_FLAC" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\kwfile_KWM" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\kwfile_lrc" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\kwfile_lrcx" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\kwfile_M4A" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\kwfile_MP1" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\kwfile_MP2" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\kwfile_MP3" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\kwfile_OGG" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\kwfile_OPUS" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\kwfile_TTA" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\kwfile_WAV" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\kwfile_wma" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\kwfile_WV" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Classes\kwfile_AAC" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Classes\kwfile_AC3" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Classes\kwfile_ape" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Classes\kwfile_CDA" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Classes\kwfile_CUE" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Classes\kwfile_DFF" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Classes\kwfile_DSF" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Classes\kwfile_FLAC" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Classes\kwfile_KWM" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Classes\kwfile_M4A" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Classes\kwfile_MP1" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Classes\kwfile_MP2" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Classes\kwfile_MP3" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Classes\kwfile_OGG" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Classes\kwfile_OPUS" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Classes\kwfile_TTA" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Classes\kwfile_WAV" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Classes\kwfile_wma" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Classes\kwfile_WV" /f >NUL 2>NUL + +for %%a in (c d e f h i j k l m n o) do rd/s/q "%%a:\KwDownload\temp"2>NUL + +CLS +ECHO.&ECHO Modded by www.423down.com diff --git a/scripts/ludashi/uninstall.bat b/scripts/ludashi/uninstall.bat new file mode 100644 index 00000000000..314102cd3b1 --- /dev/null +++ b/scripts/ludashi/uninstall.bat @@ -0,0 +1,31 @@ +@ECHO OFF&(REG QUERY "HKU\S-1-5-19">NUL 2>&1)||(powershell -Command "Start-Process '%~sdpnx0' -Verb RunAs"&&EXIT) + +taskkill /f /im computerz_cn.exe >NUL 2>NUL +taskkill /f /im ComputerZService.exe >NUL 2>NUL +taskkill /f /im BenchmarkLauncher* /t >NUL 2>NUL +taskkill /f /im Display3DEx.exe >NUL 2>NUL + +rd/s/q "%AppData%\lds" 2>NUL +rd/s/q "%AppData%\DrvMgr"2>NUL +rd/s/q "%AppData%\Ludashi"2>NUL + +reg delete "HKCU\Software\Ludashi" /f >NUL 2>NUL +reg delete "HKCU\Software\QiLu Inc." /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\ldssrv" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Ludashi" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\ComMaster" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\ComputerZ" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\LiveUpdate360" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\360Safe\Liveup" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Wow6432Node\ldssrv" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Wow6432Node\Ludashi" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Wow6432Node\ComMaster" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Wow6432Node\ComputerZ" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Wow6432Node\LiveUpdate360" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Wow6432Node\360Safe\Liveup" /f >NUL 2>NUL +reg delete "HKLM\SYSTEM\CurrentControlSet\services\HpSvc" /f >NUL 2>NUL +reg delete "HKLM\SYSTEM\CurrentControlSet\services\ComputerZ_x64" /f >NUL 2>NUL +reg delete "HKLM\SYSTEM\CurrentControlSet\services\HardwareProtect" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\ComputerZ_CN.exe" /f >NUL 2>NUL + +ECHO.&ECHO 清除完成 &TIMEOUT /t 2 >NUL&EXIT diff --git a/scripts/manifest.ejs b/scripts/manifest.ejs new file mode 100644 index 00000000000..3960c6fdb90 --- /dev/null +++ b/scripts/manifest.ejs @@ -0,0 +1,33 @@ +{ + "homepage": "http://nsis.sourceforge.net/", + "license": "Zlib", + "version": "<%= version %>", + "url": "https://downloads.sourceforge.net/project/nsis/NSIS%20<%= majorVersion %>/<%= version %>/nsis-<%= version %>.zip", + "bin": [ + "makensis.exe", + "nsis.exe" + ], + "hash": <%- JSON.stringify(hashes) %>, + "extract_dir": "nsis-<%= version %>", + "env_set": { + "NSIS_HOME": "$dir", + "NSISDIR": "$dir" + }, + "checkver": { + "url": "http://nsis.sourceforge.net/Download", + "re": "\\/rn\\/v([\\d.]+)\"" + }, + "autoupdate": { + "url": "https://downloads.sourceforge.net/project/nsis/NSIS%20$majorVersion/$version/nsis-$version.zip", + "extract_dir": "nsis-$version" + }, + "persist": [ + "nsisconf.nsh" + ], + "shortcuts": [ + [ + "NSIS.exe", + "NSIS" + ] + ] +} \ No newline at end of file diff --git "a/scripts/msedge/\346\270\205\347\220\206.bat" "b/scripts/msedge/\346\270\205\347\220\206.bat" new file mode 100644 index 00000000000..68d4da60f3c --- /dev/null +++ "b/scripts/msedge/\346\270\205\347\220\206.bat" @@ -0,0 +1,186 @@ +@ECHO OFF&(PUSHD "%~DP0")&(REG QUERY "HKU\S-1-5-19">NUL 2>&1)||( +powershell -Command "Start-Process '%~sdpnx0' -Verb RunAs"&&EXIT) + +taskkill /f /im Edge* /t >NUL 2>NUL +taskkill /f /im msedge* /t >NUL 2>NUL +taskkill /f /im TabPlus.exe >NUL 2>NUL +taskkill /f /im MyChrome.exe >NUL 2>NUL + +::如有就停止更新相关系统服务 +sc stop edgeupdate >NUL 2>NUL +sc delete edgeupdate >NUL 2>NUL +sc stop edgeupdatem >NUL 2>NUL +sc delete edgeupdatem >NUL 2>NUL +sc stop MicrosoftEdgeElevationService >NUL 2>NUL +sc delete MicrosoftEdgeElevationService >NUL 2>NUL + +::移除更新触发器相关计划任务 +del/f/q "%Windir%\System32\Tasks\MicrosoftEdgeUpdate*" >NUL 2>NUL +schtasks.exe /delete /tn "MicrosoftEdgeUpdateTaskMachineUA" /f >NUL 2>NUL +schtasks.exe /delete /tn "MicrosoftEdgeUpdateTaskMachineCore" /f >NUL 2>NUL + +::移除相关残留的临时缓存数据 +rd/s/q "%ProgramFiles(x86)%\Microsoft\temp" 2>NUL +rd/s/q "%ProgramFiles%\Microsoft\EdgeUpdate" 2>NUL +rd/s/q "%ProgramFiles(x86)%\Microsoft\EdgeUpdate" 2>NUL +rd/s/q "%LocalAppData%\Microsoft\Edge"2>NUL +rd/s/q "%LocalAppData%\Microsoft\EdgeUpdate"2>NUL +rd/s/q "%ProgramData%\Microsoft\EdgeUpdate" 2>NUL + +::移除桌面和开始菜单快捷方式 +del /q "%Public%\Desktop\*Edge*.lnk" >NUL 2>NUL +del /q "%Public%\Desktop\MyChrome.lnk" >NUL 2>NUL +del /q "%UserProfile%\Desktop\*Edge*.lnk" >NUL 2>NUL +del /q "%UserProfile%\Desktop\MyChrome.lnk" >NUL 2>NUL +del /q "%AppData%\Microsoft\Windows\Start Menu\Programs\*Edge*.lnk"2>NUL +del /q "%ProgramData%\Microsoft\Windows\Start Menu\Programs\*Edge*.lnk"2>NUL +rd/s/q "%AppData%\Microsoft\Windows\Start Menu\Programs\Microsoft Edge"2>NUL +rd/s/q "%ProgramData%\Microsoft\Windows\Start Menu\Programs\Microsoft Edge"2>NUL + +::清除相关残留的注册表键值项 +reg delete "HKCU\Software\Microsoft\Edge" /f >NUL 2>NUL +reg delete "HKLM\Software\Microsoft\Edge" /f >NUL 2>NUL +reg delete "HKCU\Software\Microsoft\EdgeUpdate" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\MSEdgeHTM" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\MSEdgePDF" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Microsoft\EdgeUpdate" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Microsoft\EdgeUpdate" /f /reg:32 >NUL 2>NUL +reg delete "HKEY_USERS\.DEFAULT\Software\Microsoft\EdgeUpdate" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" /f /v "Microsoft Edge Update" >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Microsoft Edge" /f >NUL 2>NUL +reg delete "HKLM\SYSTEM\CurrentControlSet\Services\EventLog\Application\Edge" /f >NUL 2>NUL +reg delete "HKLM\SYSTEM\CurrentControlSet\Services\MicrosoftEdgeElevationService" /f >NUL 2>NUL +reg delete "HKLM\SYSTEM\CurrentControlSet\Services\EventLog\Application\edgeupdate" /f >NUL 2>NUL +reg delete "HKLM\SYSTEM\CurrentControlSet\Services\EventLog\Application\edgeupdatem" /f >NUL 2>NUL +reg delete "HKLM\SYSTEM\CurrentControlSet\Services\EventLog\System\Microsoft Edge Etw" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Microsoft Edge" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Microsoft Edge" /f /reg:32 >NUL 2>NUL + +reg delete "HKLM\SOFTWARE\Classes\AppID\MicrosoftEdgeUpdate.exe" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Clients\StartMenuInternet\Microsoft Edge" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\RegisteredApplications" /f /v "Microsoft Edge" >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Microsoft\MediaPlayer\ShimInclusionList\msedge.exe" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\msedge.exe" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Microsoft\Internet Explorer\Main\EnterpriseMode" /f /v "MSEdgePath" >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Microsoft Edge Update" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Microsoft Edge Update" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Microsoft\Active Setup\Installed Components\{9459C573-B17A-45AE-9F64-1857B5D58CEE}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\MicrosoftEdgeUpdate.exe" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\WINEVT\Publishers\{3a5f2396-5c8f-4f1f-9b67-6cca6c990e61}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\ApplicationAssociationToasts" /f /v "MSEdgeHTM_microsoft-edge">NUL 2>NUL +reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\ApplicationAssociationToasts" /f /v "AppX7rm9drdg8sk7vqndwj3sdjw11x96jc0y_microsoft-edge" >NUL 2>NUL +reg delete "HKLM\SYSTEM\CurrentControlSet\services\SharedAccess\Parameters\FirewallPolicy\FirewallRules" /f /v "{939AE992-0357-4820-9A8E-A241A31B92E6}">NUL 2>NUL +reg delete "HKLM\SOFTWARE\Microsoft\Internet Explorer\Low Rights\ElevationPolicy\{c9abcf16-8dc2-4a95-bae3-24fd98f2ed29}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{96D7FFC2-30A4-3179-8B2A-E56E7B046992}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Microsoft\Tracing\MicrosoftEdgeUpdate_RASAPI32" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\.htm\OpenWithProgIds" /f /v "MSEdgeHTM" >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\.html\OpenWithProgIds" /f /v "MSEdgeHTM" >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\.svg\OpenWithProgIds" /f /v "MSEdgeHTM" >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\.xht\OpenWithProgIds" /f /v "MSEdgeHTM" >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\.xhtml\OpenWithProgIds" /f /v "MSEdgeHTM" >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\AppID\{1FCBE96C-1697-43AF-9140-2897C7C69767}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\AppID\{628ACE20-B77A-456F-A88D-547DB6CEEDD5}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\AppID\{A6B716CB-028B-404D-B72C-50E153DD68DA}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\AppID\{CECDDD22-2E72-4832-9606-A9B0E5E344B2}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{1FCBE96C-1697-43AF-9140-2897C7C69767}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{59B4762A-A6A9-43BF-A4E3-1BC20DA752D8}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{628ACE20-B77A-456F-A88D-547DB6CEEDD5}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{A2F5CB38-265F-4A02-9D1E-F25B664968AB}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{E6C4E813-77B3-4180-BEFF-28CE1D402FFE}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{177CAE89-4AD6-42F4-A458-00EC3389E3FE}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{195A2EB3-21EE-43CA-9F23-93C2C9934E2E}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{1B9063E4-3882-485E-8797-F28A0240782F}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{2603C88B-F971-4167-9DE1-871EE4A3DC84}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{2EC826CB-5478-4533-9015-7580B3B5E03A}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{3A49F783-1C7D-4D35-8F63-5C1C206B9B6E}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{3E102DC6-1EDB-46A1-8488-61F71B35ED5F}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{450CF5FF-95C4-4679-BECA-22680389ECB9}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{5F9C80B5-9E50-43C9-887C-7C6412E110DF}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{6DFFE7FE-3153-4AF1-95D8-F8FCCA97E56B}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{79E0C401-B7BC-4DE5-8104-71350F3A9B67}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{7B3B7A69-7D88-4847-A6BC-90E246A41F69}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{7E29BE61-5809-443F-9B5D-CF22156694EB}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{837E40DA-EB1B-440C-8623-0F14DF158DC0}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{99F8E195-1042-4F89-A28C-89CDB74A14AE}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{9A6B447A-35E2-4F6B-A87B-5DEEBBFDAD17}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{A5135E58-384F-4244-9A5F-30FA9259413C}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{A6556DFF-AB15-4DC3-A890-AB54120BEAEC}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{AB4F4A7E-977C-4E23-AD8F-626A491715DF}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{C06EE550-7248-488E-971E-B60C0AB3A6E4}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{C20433B3-0D4B-49F6-9B6C-6EE0FAE07837}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{C853632E-36CA-4999-B992-EC0D408CF5AB}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{C9C2B807-7731-4F34-81B7-44FF7779522B}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{D9AA3288-4EA7-4E67-AE60-D18EADCB923D}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{DDD4B5D4-FD54-497C-8789-0830F29A60EE}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{E4518371-7326-4865-87F8-D9D3F3B287A3}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{E55B90F1-DA33-400B-B09E-3AFF7D46BD83}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{FCE48F77-C677-4012-8A1A-54D2E2BC07BD}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{FEA2518F-758F-4B95-A59F-97FCEEF1F5D0}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\MicrosoftEdgeUpdate.CoreClass" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\MicrosoftEdgeUpdate.CoreClass.1" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\MicrosoftEdgeUpdate.CoreMachineClass" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\MicrosoftEdgeUpdate.CoreMachineClass.1" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\MicrosoftEdgeUpdate.CredentialDialogMachine" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\MicrosoftEdgeUpdate.CredentialDialogMachine.1.0" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\MicrosoftEdgeUpdate.OnDemandCOMClassMachine" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\MicrosoftEdgeUpdate.OnDemandCOMClassMachine.1.0" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\MicrosoftEdgeUpdate.OnDemandCOMClassMachineFallback" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\MicrosoftEdgeUpdate.OnDemandCOMClassMachineFallback.1.0" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\MicrosoftEdgeUpdate.OnDemandCOMClassSvc" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\MicrosoftEdgeUpdate.OnDemandCOMClassSvc.1.0" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\MicrosoftEdgeUpdate.ProcessLauncher" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\MicrosoftEdgeUpdate.ProcessLauncher.1.0" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\MicrosoftEdgeUpdate.Update3COMClassService" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\MicrosoftEdgeUpdate.Update3COMClassService.1.0" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\MicrosoftEdgeUpdate.Update3WebMachine" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\MicrosoftEdgeUpdate.Update3WebMachine.1.0" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\MicrosoftEdgeUpdate.Update3WebMachineFallback" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\MicrosoftEdgeUpdate.Update3WebMachineFallback.1.0" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\MicrosoftEdgeUpdate.Update3WebSvc" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\MicrosoftEdgeUpdate.Update3WebSvc.1.0" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\TypeLib\{C9C2B807-7731-4F34-81B7-44FF7779522B}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{08D832B9-D2FD-481F-98CF-904D00DF63CC}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{2E1DD7EF-C12D-4F8E-8AD8-CF8CC265BAD0}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{492E1C30-A1A2-4695-87C8-7A8CAD6F936F}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{59B4762A-A6A9-43BF-A4E3-1BC20DA752D8}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{5F6A18BB-6231-424B-8242-19E5BB94F8ED}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{8F09CD6C-5964-4573-82E3-EBFF7702865B}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{A2F5CB38-265F-4A02-9D1E-F25B664968AB}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{A6B716CB-028B-404D-B72C-50E153DD68DA}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{CECDDD22-2E72-4832-9606-A9B0E5E344B2}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{D1E8B1A6-32CE-443C-8E2E-EBA90C481353}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{E421557C-0628-43FB-BF2B-7C9F8A4D067C}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{E6C4E813-77B3-4180-BEFF-28CE1D402FFE}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{EA92A799-267E-4DF5-A6ED-6A7E0684BB8A}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{FF419FF9-90BE-4D9F-B410-A789F90E5A7C}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{177CAE89-4AD6-42F4-A458-00EC3389E3FE}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{195A2EB3-21EE-43CA-9F23-93C2C9934E2E}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{1B9063E4-3882-485E-8797-F28A0240782F}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{2603C88B-F971-4167-9DE1-871EE4A3DC84}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{2EC826CB-5478-4533-9015-7580B3B5E03A}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{3A49F783-1C7D-4D35-8F63-5C1C206B9B6E}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{3E102DC6-1EDB-46A1-8488-61F71B35ED5F}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{450CF5FF-95C4-4679-BECA-22680389ECB9}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{5F9C80B5-9E50-43C9-887C-7C6412E110DF}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{6DFFE7FE-3153-4AF1-95D8-F8FCCA97E56B}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{79E0C401-B7BC-4DE5-8104-71350F3A9B67}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{7B3B7A69-7D88-4847-A6BC-90E246A41F69}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{7E29BE61-5809-443F-9B5D-CF22156694EB}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{837E40DA-EB1B-440C-8623-0F14DF158DC0}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{99F8E195-1042-4F89-A28C-89CDB74A14AE}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{9A6B447A-35E2-4F6B-A87B-5DEEBBFDAD17}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{A5135E58-384F-4244-9A5F-30FA9259413C}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{A6556DFF-AB15-4DC3-A890-AB54120BEAEC}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{AB4F4A7E-977C-4E23-AD8F-626A491715DF}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{C06EE550-7248-488E-971E-B60C0AB3A6E4}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{C20433B3-0D4B-49F6-9B6C-6EE0FAE07837}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{C853632E-36CA-4999-B992-EC0D408CF5AB}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{D9AA3288-4EA7-4E67-AE60-D18EADCB923D}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{DDD4B5D4-FD54-497C-8789-0830F29A60EE}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{E4518371-7326-4865-87F8-D9D3F3B287A3}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{E55B90F1-DA33-400B-B09E-3AFF7D46BD83}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{FCE48F77-C677-4012-8A1A-54D2E2BC07BD}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{FEA2518F-758F-4B95-A59F-97FCEEF1F5D0}" /f /reg:32 >NUL 2>NUL + +CLS +ECHO.&ECHO 423Down.com diff --git "a/scripts/msedge/\350\257\264\346\230\216.txt" "b/scripts/msedge/\350\257\264\346\230\216.txt" new file mode 100644 index 00000000000..3eaef02fa64 --- /dev/null +++ "b/scripts/msedge/\350\257\264\346\230\216.txt" @@ -0,0 +1,30 @@ +------------------------------------------------------------ +本作品仅供交流体验使用,请在下载后24小时内删除。 +请勿用于商业用途,禁止任何形式二次打包或转载。 +------------------------------------------------------------ +这是基于 Chromium 的新版 Edge,和 Win10 自带 Edge 完全独立。 + +由于原版Edge不是太好用,所以我做了一个增强版,看心情更新。 + +下载地址:https://shuax.com/project/edge/ + +增强功能: + 双击关闭标签页(有一丝丝延迟,正常的!) + 保留最后标签页(防止关闭最后一个标签页时关闭浏览器,点X不行) + 鼠标悬停标签栏滚动 + 按住右键时滚轮滚动标签栏 + 移除flash锁区,移除2020年过期警告(是否加载还是要你自己选择) + 移除管理员运行警告 + 移除开发者模式警告 + 便携设计,程序放在App目录,数据放在Data目录(兼容原版数据,但重装系统换电脑会丢数据) + 移除更新错误警告(因为是绿色版没有自动更新功能) + +解压后运行App/msedge.exe即可。 +由于是便携版,不会和其它版本冲突,不想用了可以直接删掉整个文件夹。 +升级只需要覆盖App文件夹即可。(推荐先把老版本App重命名为App2,然后放入新版App,运行测试无误后可以安全删除App2老版本,如果有问题也方便还原。) + +增强功能通过App/edge++.dll实现,并修改了msedge.exe主程序,有可能会报毒。 + +鼠标手势推荐使用全局手势软件,比如MouseInc。 + +对软件有什么建议,或者发现了问题欢迎加QQ群:838372446进行反馈。 diff --git a/scripts/oraclejdk.ps1 b/scripts/oraclejdk.ps1 new file mode 100644 index 00000000000..6ae2125f014 --- /dev/null +++ b/scripts/oraclejdk.ps1 @@ -0,0 +1,13 @@ +param($dir) + +# Second extraction +$output = 7z x $dir\tools.zip "-o$dir" +rm $dir\tools.zip + +# Convert .pack to .jar, and removes .pack +ls "$dir" -recurse | ? name -match '^[^_].*?\.(?i)pack$' | % { + $name = $_.fullname -replace '\.(?i)pack$', '' + $pack = "$name.pack" + $jar = "$name.jar" + & "$dir\bin\unpack200.exe" "-r" "$pack" "$jar" +} diff --git a/scripts/portable.ps1 b/scripts/portable.ps1 new file mode 100644 index 00000000000..ff09fb46b47 --- /dev/null +++ b/scripts/portable.ps1 @@ -0,0 +1,29 @@ +<# +.SYNOPSIS + Universal portable mode enabler + IDE subdirectory is needed. +.PARAMETER Directory + Current '$dir' of application +.PARAMETER Persist + Persist directory of application +#> +param([Parameter(Mandatory)][String] $Directory, [Parameter(Mandatory)][String] $Persist) + +$properties = Join-Path 'IDE' 'bin\idea.properties' + +if (!(Join-Path $Persist $properties | Test-Path)) { + Write-Host "File $properties does not exists. Creating." -ForegroundColor 'Yellow' + + $fullProp = Join-Path $Directory $properties + $currentForward = (Split-Path $Directory | Join-Path -ChildPath 'current') -replace '\\', '/' + $profileDir = "$currentForward/profile" + + $CONT = Get-Content $fullProp + # Set portable configuration + $CONT = $CONT -replace '^#\s*(idea.config.path=).*$', "`$1$profileDir/config" + $CONT = $CONT -replace '^#\s*(idea.system.path=).*$', "`$1$profileDir/system" + $CONT = $CONT -replace '^#\s*(idea.plugins.path=).*$', '$1${idea.config.path}/plugins' + $CONT = $CONT -replace '^#\s*(idea.log.path=).*$', '$1${idea.system.path}/log' + + Set-Content -LiteralPath $fullProp -Value $CONT -Encoding 'Ascii' -Force +} diff --git a/scripts/potplayer/potplayer64-settings.reg b/scripts/potplayer/potplayer64-settings.reg new file mode 100644 index 00000000000..9c88790ad29 --- /dev/null +++ b/scripts/potplayer/potplayer64-settings.reg @@ -0,0 +1,82 @@ +Windows Registry Editor Version 5.00 + +[HKEY_CURRENT_USER\Software\Daum\PotPlayerMini64] + +[HKEY_CURRENT_USER\Software\Daum\PotPlayerMini64\Settings] +;基本——不使用自动更新 +"CheckAutoUpdate"=dword:00000000 +;基本——取消“预先下载更新文件” +"AutoDownloadFile"=dword:00000000 +;基本——全选“最小化后暂停/还原时播放” +"PauseOnMin"=dword:00000001 +;基本——基于屏幕中心区域调整窗口尺寸 +"MoveSizeByCenter"=dword:00000001 +;基本——取消“使用窗体吸附功能” +"UseMagWindow"=dword:00000000 +;基本——关闭时还原为默认尺寸 +"DefSizeOnClose"=dword:00000001 +;基本——启始——播放器启动后——窗口位置“默认位置” +"StartCenterPos"=dword:00000003 +;基本——皮肤/配色——弹出式菜单“系统菜单” +"SkinPopupMenuStyle"=dword:00000001 +;基本——简索——取消“播放文件夹里的所有文件”、“播放文件夹里的所有文件(含子目录)”、“收藏夹”、“当前播放列表”、“最近播放” +"SO_FolderOpen"=dword:00000000 +"SO_FolderOpenSub"=dword:00000000 +"SO_Fav"=dword:00000000 +"SO_Playlist"=dword:00000000 +"SO_History"=dword:00000000 +;基本——消息——屏显消息字体设置 +"MessageFontName"="微软雅黑" +"MessageFontSize"=dword:0000000c +"MessageTextColor"=dword:ff00ffff +"MessageOutlineColor"=dword:c8ff8000 +;播放——播放结束后关闭 +"CloseOnComplete"=dword:00000001 +;播放——取消“在进度条上显示书签/章节标记” +"DisplayBookmark"=dword:00000000 +;播放——列表——取消“记忆近期播放名单/URL地址” +"SavePlayList"=dword:00000000 +;字幕——取消“VMR/EVR中平滑输出字幕” +"UseCaptionBinFilter"=dword:00000000 +;字幕——最大分辨率“屏幕分辨率” +"CaptionMaxRes"=dword:00000001 +;字幕——字幕缓冲量“0” +"CaptionQueueSize"=dword:00000000 +;字幕——语言/同步/其他——首选语言“清空” +"PrefCapLang"="" +;字幕——语言/同步/其他——取消“记忆用户的语言选择” +"SaveCaptionSel"=dword:00000000 +;滤镜——内置图像处理滤镜设置——激活条件“不使用” +"VideoTransformUseMode"=dword:00000002 +;滤镜——源滤镜/分离器——内置源滤镜/分离器设置——取消“自动加载媒体内所带字体” +"InstallEmbeddedFont"=dword:00000000 +;滤镜——视频解码器——内置解码器/DXVA设置——使用硬件加速(DXVA) +"IntDXVAUseMode"=dword:00000001 +;滤镜——视频解码器——内置解码器/DXVA设置——解码器——H.265/HEVC“FFmpeg64.dll” +;【注: 此设置需要FFmpeg64.dll存在。实现效果: 可切换“内置FFmpeg HEVC H/W 解码器”(如果支持,且开启DXVA的前提下)∕“FFmpeg64.dll”(不支持内置FFmpeg HEVC H/W 解码器,或没有开启DXVA的前提下)】 +"IntH265_0"=dword:00000001 +;声音——语言/同步/其他——取消“记忆用户的语言/流选择” +"SaveAudioSel"=dword:00000000 +;存档——采集类文件夹——截图: 条件允许时以播放目录存档 +"VideoCaptureFolderSelf"=dword:00000001 +;存档——采集类文件夹——视频录制: 条件允许时以播放目录存档 +"MovieCaptureFolderSelf"=dword:00000001 +;存档——采集类文件夹——声音录制: 条件允许时以播放目录存档 +"AudioCaptureFolderSelf"=dword:00000001 +;关联——取消“显示播放列表菜单” +"FileLinkEnqueue"=dword:00000000 +;关联——取消“显示播放菜单” +"FileLinkPlay"=dword:00000000 +;右键菜单“播放——章节/书签——将书签保存在视频文件夹内” +"BookmarkSaveExternal"=dword:00000001 +;右键菜单“视频——图像截取——创建缩略图——保存到影片所在文件夹中” +"ThumbnailSameDir"=dword:00000001 +;右键菜单“视频——图像截取——创建缩略图——如有字幕则输出” +"ThumbnailCaption"=dword:00000001 +;右键菜单“视频——图像截取——以播放时间命名文件” +"VideoCaptureTime"=dword:00000001 +;右键菜单“视频——图像截取——同时截取字幕(如果有)” +"CaptureWithCaption"=dword:00000001 +;预设自定义尺寸为1680×945(按9切换) +"UserDefSizeX"=dword:00000690 +"UserDefSizeY"=dword:000003b1 diff --git a/scripts/python/pypi-mirror.ps1 b/scripts/python/pypi-mirror.ps1 new file mode 100644 index 00000000000..deac992bb24 --- /dev/null +++ b/scripts/python/pypi-mirror.ps1 @@ -0,0 +1,103 @@ +#!/usr/bin/env pwsh -c + +<# +.DESCRIPTION + Pypi mirror. + +.PARAMETER mirror + The mirror to use. + * tuna (default) + * ustc + * ali + * tencent + * huawei + * 163 + * douban + +.PARAMETER clear + Clear the mirror. + +.PARAMETER help + Show help. + +.Example + > pypi-mirror.ps1 -mirror tuna + > pypi-mirror.ps1 -clear +#> + +param( + [Alias('m')] + [ValidateSet('tuna', 'ustc', 'ali', 'tencent', 'huawei', '163', 'douban')] + [string]$mirror = 'tuna', + + [Alias('c')] + [switch]$clear, + + [Alias('h')] + [switch]$help +) + +if ($help) { + Write-Host @' +Usage: pypi-mirror.ps1 [OPTION] + +Optional options: + -m, --mirror + The mirror to use. + * tuna (default) + * ustc + * ali + * tencent + * huawei + * 163 + * douban + -c, --clear + Clear the mirror. + -h, --help + Show help. + +.Example + > pypi-mirror.ps1 -mirror tuna + > pypi-mirror.ps1 -clear +'@ + exit 0 +} + +if ($mirror) { + if ($mirror -eq 'tuna') { + $mirror_url = 'https://pypi.tuna.tsinghua.edu.cn/simple' + $index_url = 'pypi.tuna.tsinghua.edu.cn' + } elseif ($mirror -eq 'ustc') { + $mirror_url = 'https://mirrors.ustc.edu.cn/pypi/web/simple' + $index_url = 'mirrors.ustc.edu.cn' + } elseif ($mirror -eq 'ali') { + $mirror_url = 'https://mirrors.aliyun.com/pypi/simple/' + $index_url = 'mirrors.aliyun.com' + } elseif ($mirror -eq 'tencent') { + $mirror_url = 'https://mirrors.cloud.tencent.com/pypi/simple' + $index_url = 'mirrors.cloud.tencent.com' + } elseif ($mirror -eq 'huawei') { + $mirror_url = 'https://repo.huaweicloud.com/repository/pypi/simple' + $index_url = 'repo.huaweicloud.com' + } elseif ($mirror -eq '163') { + $mirror_url = 'https://mirrors.163.com/pypi/simple/' + $index_url = 'mirrors.163.com' + } elseif ($mirror -eq 'douban') { + $mirror_url = 'http://pypi.douban.com/simple/' + $index_url = 'pypi.douban.com' + } else { + Write-Host 'Unknown mirror.' + exit 1 + } + + python -m pip install --trusted-host https://${index_url} -i ${mirror_url} --upgrade pip + pip config set global.index-url ${mirror_url} + pip config set global.trusted-host ${index_url} + pip config set global.timeout 120 +} + +if ($clear) { + pip config set global.index-url https://pypi.org/simple + pip config set global.trusted-host pypi.org + pip config set global.timeout 120 +} diff --git a/scripts/qq/install.bat b/scripts/qq/install.bat new file mode 100644 index 00000000000..8942223dbbf --- /dev/null +++ b/scripts/qq/install.bat @@ -0,0 +1,102 @@ +@ECHO OFF&(PUSHD "%~DP0")&(REG QUERY "HKU\S-1-5-19">NUL 2>&1)||( +powershell -Command "Start-Process '%~sdpnx0' -Verb RunAs"&&EXIT) + +taskkill /f /im QQSetupEx.exe >NUL 2>NUL +taskkill /f /im QQProtect.exe >NUL 2>NUL +taskkill /f /im TXPlatform.exe >NUL 2>NUL +taskkill /f /im QQExternal.exe >NUL 2>NUL +taskkill /f /im QQScLauncher.exe >NUL 2>NUL +taskkill /f /im QQGuild.exe /t >NUL 2>NUL +taskkill /f /im QQApp.exe >NUL 2>NUL +taskkill /f /im QQ.exe /t >NUL 2>NUL + +::注册网页关联、表情包类型、下载组件等协议 +if exist Bin\TXPlatform.exe Bin\TXPlatform.exe /RegServer +if exist Bin\AppCom.dll regsvr32 /s Bin\AppCom.dll +if exist Bin\Common.dll regsvr32 /s Bin\Common.dll +if exist Bin\KernelUtil.dll regsvr32 /s Bin\KernelUtil.dll +if exist Bin\TXPFProxy.dll regsvr32 /s Bin\TXPFProxy.dll +if exist Bin\CPHelper.dll regsvr32 /s Bin\CPHelper.dll +if exist Bin\Timwp.dll regsvr32 /s Bin\Timwp.dll +if exist Bin\DownloadProxyPS.dll regsvr32 /s Bin\DownloadProxyPS.dll +if exist Bin\QQExternal.exe Bin\QQExternal.exe /SetupRegister + +::注册腾讯软件运行库组件 +if exist Bin\TXSSO regsvr32 /s Bin\TXSSO\Bin\SSOLUIControl.dll +if exist Bin\TXSSO regsvr32 /s Bin\TXSSO\Bin\npSSOAxCtrlForPTLogin.dll + +::注册浏览器快速登陆组件 +if exist Bin\TXSSO\Npchrome regsvr32 /s Bin\TXSSO\Npchrome\npactivex.dll + +::注册群共享微云上传组件 +regsvr32 /s Plugin\Com.Tencent.NetDisk\Bin\QQDisk\Bin\TXFTNActiveX.dll + +::清除注册组件及相关残留数据 +rd/s/q "%AppData%\od" 2>NUL +del/f/q "%tmp%\*.tvl">NUL 2>NUL +del/f/q "%tmp%\*.tsd">NUL 2>NUL +del/f/q "%tmp%\ts*.dat">NUL 2>NUL +del/f/q "%tmp%\QQSa*.exe">NUL 2>NUL +rd/s/q "%AppData%\qq_guild"2>NUL +rd/s/q "%AppData%\Tencent\OD" 2>NUL +rd/s/q "%AppData%\Tencent\QQ" 2>NUL +rd/s/q "%AppData%\Tencent\IM" 2>NUL +rd/s/q "%AppData%\Tencent\Logs"2>NUL +rd/s/q "%AppData%\Tencent\TXSSO"2>NUL +rd/s/q "%AppData%\Tencent\QTalk"2>NUL +rd/s/q "%AppData%\Tencent\libsdk"2>NUL +rd/s/q "%AppData%\Tencent\beacon"2>NUL +rd/s/q "%AppData%\Tencent\QQLite"2>NUL +rd/s/q "%AppData%\QQAppAssistant"2>NUL +rd/s/q "%AppData%\Tencent\Common"2>NUL +rd/s/q "%AppData%\Tencent\SafeBas"2>NUL +rd/s/q "%AppData%\Tencent\QQPCMGR"2>NUL +rd/s/q "%APPDATA%\Tencent\QQDoctor"2>NUL +rd/s/q "%AppData%\Tencent\QQTempSys"2>NUL +rd/s/q "%AppData%\Tencent\Tencentdl"2>NUL +rd/s/q "%AppData%\Tencent\DeskUpdate"2>NUL +rd/s/q "%AppData%\Tencent\QQDownload"2>NUL +rd/s/q "%AppData%\Tencent\QQ\QQProtect"2>NUL +rd/s/q "%AppData%\Tencent\AndroidAssist"2>NUL +rd/s/q "%AppData%\Tencent\AndroidServer"2>NUL +rd/s/q "%AppData%\Tencent\QQPhoneManager"2>NUL +rd/s/q "%AppData%\Tencent\QQ\commonf_inst"2>NUL +rd/s/q "%AppData%\Tencent\QQPhoneAssistant"2>NUL +rd/s/q "%AppData%\Tencent\QQ\QQAntiPhishing"2>NUL +del/f/q "%AppData%\Tencent\QQCall*.exe">NUL 2>NUL +rd/s/q "%LocalAppData%\Tencent\QQGuild"2>NUL +rd/s/q "%LocalAppData%\qq_guild-updater"2>NUL +rd/s/q "%LocalAppData%\Tencent\MiniBrowser"2>NUL +rd/s/q "%Public%\Documents\Tencent"2>NUL +for /f "skip=2 tokens=3 " %%i in ('reg query "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" /v personal') do ( +for /f "delims=*" %%j in ('echo %%i') do rd /s /q "%%j\Tencent Files\All Users\QQ\Misc\OperateFace" >NUL 2>NUL) + +IF NOT EXIST "%ProgramW6432%" ( +::标记软件检测路径(安装视频留言和影音播放等组件下载需要) +reg add "HKLM\Software\Tencent\QQ2009" /f /v "Install" /d "%~dp0\" >NUL 2>NUL +::标记软件版本号(企业类型网页会话需要,CRM组件也需要保留) +reg add "HKLM\Software\Tencent\QQ2009" /f /v "version" /d "59.11.0.28774.0" >NUL 2>NUL +reg add "HKLM\Software\Tencent\QQ2009" /f /v "rversion" /d "0.27236.0.28774.0" >NUL 2>NUL +) ELSE ( +reg add "HKLM\Software\Tencent\QQ2009" /f /v "Install" /d "%~dp0\" /reg:32 >NUL 2>NUL +reg add "HKLM\Software\Tencent\QQ2009" /f /v "version" /d "59.11.0.28774.0" /reg:32 >NUL 2>NUL +reg add "HKLM\Software\Tencent\QQ2009" /f /v "rversion" /d "0.27236.0.28774.0" /reg:32 >NUL 2>NUL +) +::标记QQ频道检测路径 +reg add "HKCU\SOFTWARE\Tencent\QQGuild" /f /v "KeepShortcuts" /d "true" >NUL 2>NUL +reg add "HKCU\SOFTWARE\Tencent\QQGuild" /f /v "ShortcutName" /d "QQGuild" >NUL 2>NUL +reg add "HKCU\SOFTWARE\Tencent\QQGuild" /f /v "DisplayVersion" /d "1.3.14-bk.4022" >NUL 2>NUL +reg add "HKCU\SOFTWARE\Tencent\QQGuild" /f /v "InstallLocation" /d "%LocalAppData%\Tencent\QQGuild\1.3.14-bk.4022" >NUL 2>NUL +reg add "HKCU\SOFTWARE\Tencent\QQGuild" /f /v "Executable" /d "%LocalAppData%\Local\Tencent\QQGuild\1.3.14-bk.4022\QQGuild.exe" >NUL 2>NUL + +::解决Windows 7或更高版开启UAC用户账户控制清空下数据保存位置更改失败问题 +ver|findstr "\<6\.[0-9]\.[0-9][0-9]*\> \<10\.[0-9]\.[0-9][0-9]*\>" >NUL && ( +SET Data=^& echo +if not exist "%Public%\Documents\Tencent\QQ\UserDataInfo.ini" md "%Public%\Documents\Tencent\QQ" 2>NUL +if not exist "%Public%\Documents\Tencent\QQ\UserDataInfo.ini" echo.%Data%>>"%Public%\Documents\Tencent\QQ\UserDataInfo.ini" 2>NUL +) + +::创建桌面快捷方式 +::mshta VBScript:Execute("Set a=CreateObject(""WScript.Shell""):Set b=a.CreateShortcut(a.SpecialFolders(""Desktop"") & ""\腾讯QQ.lnk""):b.TargetPath=""%~sdp0Bin\QQScLauncher.exe"":b.WorkingDirectory=""%~sdp0Bin"":b.Save:close") + +ECHO.&ECHO 完成 &TIMEOUT /t 3 >NUL&EXIT diff --git a/scripts/qq/uninstall.bat b/scripts/qq/uninstall.bat new file mode 100644 index 00000000000..104514253b1 --- /dev/null +++ b/scripts/qq/uninstall.bat @@ -0,0 +1,175 @@ +@ECHO OFF&(PUSHD "%~DP0")&(REG QUERY "HKU\S-1-5-19">NUL 2>&1)||( +powershell -Command "Start-Process '%~sdpnx0' -Verb RunAs"&&EXIT) + +taskkill /f /im QQSetupEx.exe >NUL 2>NUL +taskkill /f /im QQProtect.exe >NUL 2>NUL +taskkill /f /im TXPlatform.exe >NUL 2>NUL +taskkill /f /im QQExternal.exe >NUL 2>NUL +taskkill /f /im GVStarter.exe >NUL 2>NUL +taskkill /f /im QQScLauncher.exe >NUL 2>NUL +taskkill /f /im QQGuild.exe /t >NUL 2>NUL +taskkill /f /im QQApp.exe >NUL 2>NUL +taskkill /f /im QQ.exe /t >NUL 2>NUL + +::卸载相关组件 +regsvr32 /s /u Bin\TXSSO\Bin\SSOCommon.dll +regsvr32 /s /u Bin\TXSSO\Npchrome\npactivex.dll +regsvr32 /s /u Bin\TXSSO\Bin\npSSOAxCtrlForPTLogin.dll +if exist Bin\Timwp.dll regsvr32 /s /u Bin\Timwp.dll +if exist Bin\AppCom.dll regsvr32 /s /u Bin\AppCom.dll +if exist Bin\CPHelper.dll regsvr32 /s /u Bin\CPHelper.dll +if exist Bin\TXPFProxy.dll regsvr32 /s /u Bin\TXPFProxy.dll +if exist Bin\KernelUtil.dll regsvr32 /s /u Bin\KernelUtil.dll +if exist Bin\TXPlatform.exe Bin\TXPlatform.exe /UnregServer +if exist Bin\DownloadProxyPS.dll regsvr32 /s /u Bin\DownloadProxyPS.dll +regsvr32 /s /u Plugin\Com.Tencent.NetDisk\Bin\QQDisk\Bin\TXFTNActiveX.dll + +if exist "%AppData%\Tencent\QQ\QQAntiPhishing\AccountProtect.dll" ( +regsvr32 /s /u "%AppData%\Tencent\QQ\QQAntiPhishing\AccountProtect.dll" +) +IF NOT EXIST "%ProgramW6432%" ( +if exist ShellExt\QQShellExt.dll regsvr32 /s /u ShellExt\QQShellExt.dll +if exist "%ProgramFiles%\Tencent\QzoneMusic\QzoneMusic.exe" "%ProgramFiles%\Tencent\QzoneMusic\QzoneMusic.exe" /UnRegServer +if exist "%ProgramFiles%\Tencent\QzoneMusic\QzoneMusicUninst.exe" "%ProgramFiles%\Tencent\QzoneMusic\zoneMusicUninst.exe" /S +if exist "%CommonProgramFiles%\Tencent\Npchrome\npactivex.dll" regsvr32 /s /u "%CommonProgramFiles%\Tencent\Npchrome\npactivex.dll" +rd /s/q "%CommonProgramFiles%\Tencent\QQDownload"2>NUL +rd /s/q "%CommonProgramFiles%\Tencent\Npchrome"2>NUL +rd /s/q "%CommonProgramFiles%\Tencent\TXFTN"2>NUL +rd /s/q "%ProgramFiles%\Tencent\QzoneMusic"2>NUL +del /f/q "%WinDir%\System32\TXGYMail*.dll" >NUL 2>NUL +) ELSE ( +if exist ShellExt\QQShellExt64.dll regsvr32 /s /u ShellExt\QQShellExt64.dll +if exist "%ProgramFiles(x86)%\Tencent\QzoneMusic\QzoneMusic.exe" "%ProgramFiles(x86)%\Tencent\QzoneMusic\QzoneMusic.exe" /UnRegServer +if exist "%ProgramFiles(x86)%\Tencent\QzoneMusic\QzoneMusicUninst.exe" "%ProgramFiles(x86)%\Tencent\QzoneMusic\zoneMusicUninst.exe" /S +if exist "%ProgramFiles(x86)%\Tencent\Qzone\npQQPhotoDrawEx.dll" regsvr32 /s /u "%ProgramFiles(x86)%\Tencent\Qzone\npQQPhotoDrawEx.dll" +if exist "%CommonProgramFiles(x86)%\Tencent\Npchrome\npactivex.dll" regsvr32 /s /u "%CommonProgramFiles(x86)%\Tencent\Npchrome\npactivex.dll" +rd /s/q "%CommonProgramFiles(x86)%\Tencent\QQDownload"2>NUL +rd /s/q "%CommonProgramFiles(x86)%\Tencent\Npchrome"2>NUL +rd /s/q "%CommonProgramFiles(x86)%\Tencent\TXFTN"2>NUL +rd /s/q "%ProgramFiles(x86)%\Tencent\QzoneMusic"2>NUL +rd /s/q "%ProgramFiles(x86)%\Tencent\Qzone"2>NUL +del /f/q "%WinDir%\SysWOW64\TXGYMail*.dll" >NUL 2>NUL +) + +::清除卸载组件及相关残留数据 +rd/s/q "%AppData%\od" 2>NUL +del/f/q "%tmp%\*.tvl">NUL 2>NUL +del/f/q "%tmp%\*.tsd">NUL 2>NUL +del/f/q "%tmp%\ts*.dat">NUL 2>NUL +del/f/q "%tmp%\QQSa*.exe">NUL 2>NUL +rd/s/q "%AppData%\qq_guild"2>NUL +rd/s/q "%AppData%\Tencent\OD" 2>NUL +rd/s/q "%AppData%\Tencent\QQ" 2>NUL +rd/s/q "%AppData%\Tencent\IM" 2>NUL +rd/s/q "%AppData%\Tencent\Logs"2>NUL +rd/s/q "%AppData%\Tencent\TXSSO"2>NUL +rd/s/q "%AppData%\Tencent\QTalk"2>NUL +rd/s/q "%AppData%\Tencent\beacon"2>NUL +rd/s/q "%AppData%\Tencent\libsdk"2>NUL +rd/s/q "%AppData%\Tencent\QQLite"2>NUL +rd/s/q "%AppData%\QQAppAssistant"2>NUL +rd/s/q "%AppData%\Tencent\Common"2>NUL +rd/s/q "%AppData%\Tencent\SafeBas"2>NUL +rd/s/q "%AppData%\Tencent\QQPCMGR"2>NUL +rd/s/q "%APPDATA%\Tencent\QQDoctor"2>NUL +rd/s/q "%AppData%\Tencent\QQTempSys"2>NUL +rd/s/q "%AppData%\Tencent\Tencentdl"2>NUL +rd/s/q "%AppData%\Tencent\DeskUpdate"2>NUL +rd/s/q "%AppData%\Tencent\QQDownload"2>NUL +rd/s/q "%AppData%\Tencent\QQ\QQProtect"2>NUL +rd/s/q "%AppData%\Tencent\AndroidAssist"2>NUL +rd/s/q "%AppData%\Tencent\AndroidServer"2>NUL +rd/s/q "%AppData%\Tencent\QQPhoneManager"2>NUL +rd/s/q "%AppData%\Tencent\QQ\commonf_inst"2>NUL +rd/s/q "%AppData%\Tencent\QQPhoneAssistant"2>NUL +rd/s/q "%AppData%\Tencent\QQ\QQAntiPhishing"2>NUL +del/f/q "%AppData%\Tencent\QQCall*.exe">NUL 2>NUL +rd /s/q "%ProgramData%\Tencent\OD" 2>NUL +rd/s/q "%LocalAppData%\Tencent\QQGuild"2>NUL +rd/s/q "%LocalAppData%\qq_guild-updater"2>NUL +rd/s/q "%LocalAppData%\Tencent\MiniBrowser"2>NUL + +::清除桌面和开始菜单快捷方式 +ver|findstr "5\.[0-9]\.[0-9][0-9]*" >NUL && ( +del/q "%UserProfile%\桌面\腾讯QQ.lnk" >NUL 2>NUL +del/q "%AllUsersProfile%\桌面\腾讯QQ.lnk" >NUL 2>NUL +rd/s/q "%UserProfile%\「开始」菜单\程序\TencentVideoMPlayer"2>NUL +rd/s/q "%AllUsersProfile%\「开始」菜单\程序\TencentVideoMPlayer"2>NUL +rd/s/q "%UserProfile%\「开始」菜单\程序\腾讯软件\腾讯QQ"2>NUL +rd/s/q "%AllUsersProfile%\「开始」菜单\程序\腾讯软件\腾讯QQ"2>NUL ) +ver|findstr "\<6\.[0-9]\.[0-9][0-9]*\> \<10\.[0-9]\.[0-9][0-9]*\>" >NUL && ( +del/q "%Public%\Desktop\腾讯QQ.lnk" >NUL 2>NUL +del/q "%UserProfile%\Desktop\腾讯QQ.lnk" >NUL 2>NUL +rd/s/q "%AppData%\Microsoft\Windows\Start Menu\Programs\TencentVideoMPlayer"2>NUL +rd/s/q "%ProgramData%\Microsoft\Windows\Start Menu\Programs\TencentVideoMPlayer"2>NUL +rd/s/q "%AppData%\Microsoft\Windows\Start Menu\Programs\腾讯软件\腾讯QQ"2>NUL +rd/s/q "%ProgramData%\Microsoft\Windows\Start Menu\Programs\腾讯软件\腾讯QQ"2>NUL ) + +::清除系统程序卸载项 +reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\QQ" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\QQ" /f /reg:32 >NUL 2>NUL + +::清除相关注册表键值 +reg delete "HKLM\SOFTWARE\Classes\.eif" /F >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\.eip" /F >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\.kipx" /F >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\KIPX.File" /F >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\EMOTION.File" /F >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\EMOTION.Package" /F >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\AppID\DownloadProxy.EXE" /F >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\DownloadProxy.Downloader" /F >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\DownloadProxy.Downloader.1" /F >NUL 2>NUL +reg delete "HKCU\Software\Tencent\QQ" /F >NUL 2>NUL +reg delete "HKCU\Software\Tencent\Report" /F >NUL 2>NUL +reg delete "HKCU\Software\Tencent\Plugin" /F >NUL 2>NUL +reg delete "HKCU\Software\Tencent\QQ2009" /F >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Tencent\QQGuild" /F >NUL 2>NUL +reg delete "HKCU\Software\Tencent\TodayDo" /F >NUL 2>NUL +reg delete "HKCU\Software\Tencent\QQProtect" /F>NUL 2>NUL +reg delete "HKCU\Software\Tencent\PlatForm_Type_List" /F >NUL 2>NUL +reg delete "HKCU\Software\Tencent\PLATFORM_CLSID_LIST" /F >NUL 2>NUL +reg delete "HKCU\Software\Classes\EMOTION.File" /F >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Classes\THEMEX.Package" /f >NUL 2>NUL +reg delete "HKCU\Software\Classes\EMOTION.Package" /F >NUL 2>NUL +reg delete "HKCU\Software\Tencent\AndroidAssistant" /F>NUL 2>NUL +reg delete "HKEY_USERS\.DEFAULT\Software\Tencent\QQ2009" /F>NUL 2>NUL +reg delete "HKLM\Software\Classes\QQPet" /F>NUL 2>NUL +reg delete "HKLM\Software\Tencent\QQ2009" /F >NUL 2>NUL +reg delete "HKLM\Software\Classes\Tencent" /F >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\QQPet" /F /reg:32 >NUL 2>NUL +reg delete "HKLM\Software\Tencent\QQ2009" /F /reg:32 >NUL 2>NUL +reg delete "HKLM\Software\Classes\Tencent" /F /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Tencent\PlatForm_Type_List" /F>NUL 2>NUL +reg delete "HKLM\SOFTWARE\Tencent\QQPhotoDrawEx" /F /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Tencent\BackupDownloader" /F /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Tencent\PlatForm_Type_List" /F /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Tencent\QQPhotoDrawEx" /F>NUL 2>NUL +reg delete "HKLM\SOFTWARE\Tencent\BackupDownloader" /F>NUL 2>NUL +reg delete "HKLM\SOFTWARE\encent\PlatForm_Type_List" /F>NUL 2>NUL +reg delete "HKLM\SOFTWARE\Microsoft\Tracing\QQ_RASAPI32" /F>NUL 2>NUL +reg delete "HKLM\SOFTWARE\Microsoft\Tracing\QQ_RASAPI32" /F /reg:32 >NUL 2>NUL +rd/s/q "%AppData%\Tencent\Logs"2>NUL +rd/s/q "%AppData%\Tencent\QQ" 2>NUL + +::删除软件以及当前用户数据 +@REM rd/s/q "%Public%\Documents\Tencent"2>NUL +@REM FOR /F "skip=2 tokens=3 " %%i IN ('REG QUERY "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" /v personal') DO ( +@REM FOR /F "delims=*" %%j IN ('ECHO;%%i') DO RD /S/Q "%%j\Tencent Files" >NUL 2>NUL) +@REM RD /S/Q "%AppData%\Tencent\Users" >NUL 2>NUL +@REM IF EXIST ShellExt DEL /F/Q "ShellExt\*.*" >NUL 2>NUL +@REM IF EXIST ShellExt\QQShellExt.dll ren ShellExt\QQShellExt.dll "QQShellExt.dll.%time:~0,2%%time:~3,2%%time:~6,2%.tmp" >NUL 2>NUL +@REM IF EXIST ShellExt\QQShellExt64.dll ren ShellExt\QQShellExt64.dll "QQShellExt64.dll.%time:~0,2%%time:~3,2%%time:~6,2%.tmp" >NUL 2>NUL +@REM PUSHD .. & RD /S/Q "%~DP0" >NUL 2>NUL + +::删除软件保留当前用户数据 +IF EXIST ShellExt DEL /F/Q "ShellExt\*.*" >NUL 2>NUL +IF EXIST ShellExt\QQShellExt.dll ren ShellExt\QQShellExt.dll "QQShellExt.dll.%time:~0,2%%time:~3,2%%time:~6,2%.tmp" >NUL 2>NUL +IF EXIST ShellExt\QQShellExt64.dll ren ShellExt\QQShellExt64.dll "QQShellExt64.dll.%time:~0,2%%time:~3,2%%time:~6,2%.tmp" >NUL 2>NUL +IF EXIST "users" ( +FOR /F "delims=*" %%a IN ('dir /a/b *.*^|findstr /v /i "users$"') DO ( +RD /S/Q "%%a" >NUL 2>NUL & DEL /F/Q "%%a" >NUL 2>NUL) +) ELSE ( +IF EXIST ShellExt DEL /F/Q "ShellExt\*.*" >NUL 2>NUL +IF EXIST ShellExt\QQShellExt.dll ren ShellExt\QQShellExt.dll "QQShellExt.dll.%time:~0,2%%time:~3,2%%time:~6,2%.tmp" >NUL 2>NUL +IF EXIST ShellExt\QQShellExt64.dll ren ShellExt\QQShellExt64.dll "QQShellExt64.dll.%time:~0,2%%time:~3,2%%time:~6,2%.tmp" >NUL 2>NUL +PUSHD .. & RD /S/Q "%~DP0" >NUL 2>NUL) diff --git a/scripts/qqmusic/install.bat b/scripts/qqmusic/install.bat new file mode 100644 index 00000000000..49c86735483 --- /dev/null +++ b/scripts/qqmusic/install.bat @@ -0,0 +1,44 @@ +@ECHO OFF&(PUSHD "%~DP0")&(REG QUERY "HKU\S-1-5-19">NUL 2>&1)||( +powershell -Command "Start-Process '%~sdpnx0' -Verb RunAs"&&EXIT) + +taskkill /f /im QQMusic* >NUL 2>NUL +taskkill /f /im QMWeiyun.exe >NUL 2>NUL +taskkill /f /im qmbrowser.exe >NUL 2>NUL +taskkill /f /im QMSystemEQ.exe >NUL 2>NUL +taskkill /f /im QMDriverHelper* >NUL 2>NUL +taskkill /f /im StartDesktopProjection* >NUL 2>NUL + +::注册腾讯软件运行库组件 +regsvr32 /s TXSSO\Bin\SSOCommon.dll +regsvr32 /s TXSSO\Bin\SSOLUIControl.dll +regsvr32 /s TXSSO\Bin\npSSOAxCtrlForPTLogin.dll + +::注册浏览器快速登陆组件 +regsvr32 /s QQMusic_Login.dll + +::注册相关组件 +QQMusicSvr.exe /RegServer +QQMusicAgent.exe /regqmfiles +QQMusicAgent.exe /prefetch "%~dp0\" +QQMusicAgent.exe /collecthardwareinfo +QQMusicAgent.exe /CheckDirect2D +QQMusicAgent.exe /CheckDirect3D9ForMVPlay +QQMusicAgent.exe /writehardwareinfo + +::设置默认播放器 +::QQMusicAgent.exe /regqmfiles +::QQMusicAgent.exe /regmediafiles + +::清除注册组件残留文件 +rd/s/q "%TEMP%\QQMusicInstaller"2>NUL +rd/s/q "%AppData%\Tencent\Logs"2>NUL +del/f/q "%AppData%\Tencent\QQMusic\updateinfo.ini"2>NUL + +::软件路径检测键值 +IF NOT EXIST "%ProgramW6432%" ( +reg add "HKLM\Software\Tencent\QQMusic" /f /v "Install" /d "%~dp0\" >NUL +) ELSE ( +reg add "HKLM\Software\Tencent\QQMusic" /f /v "Install" /d "%~dp0\" /reg:32 >NUL +) + +ECHO.&ECHO Done. diff --git a/scripts/qqmusic/uninstall.bat b/scripts/qqmusic/uninstall.bat new file mode 100644 index 00000000000..0bcf20039eb --- /dev/null +++ b/scripts/qqmusic/uninstall.bat @@ -0,0 +1,105 @@ +@ECHO OFF&(PUSHD "%~DP0")&(REG QUERY "HKU\S-1-5-19">NUL 2>&1)||( +powershell -Command "Start-Process '%~sdpnx0' -Verb RunAs"&&EXIT) + +taskkill /f /im QQMusic* >NUL 2>NUL +taskkill /f /im QMWeiyun.exe >NUL 2>NUL +taskkill /f /im QMSystemEQ.exe >NUL 2>NUL +taskkill /f /im QMDriverHelper* >NUL 2>NUL +taskkill /f /im StartDesktopProjection* >NUL 2>NUL + +::卸载组件 +regsvr32 /s /u QQMusic_Login.dll +regsvr32 /s /u TXSSO\Bin\SSOCommon.dll +regsvr32 /s /u TXSSO\Bin\SSOLUIControl.dll +regsvr32 /s /u TXSSO\Bin\npSSOAxCtrlForPTLogin.dll +start /wait QQMusicSvr.exe /UnRegServer +start /wait QQMusicAgent.exe /unregmediafilesForUninstall + +::清除残留 +rd/s/q "%AppData%\Tencent\Logs"2>NUL +rd/s/q "%AppData%\Tencent\QQMusic"2>NUL +rd/s/q "%AppData%\Macromedia\Flash Player\#SharedObjects\MHPJELSJ\imgcache.qq.com"2>NUL + +::清除桌面和开始菜单快捷方式 +ver|findstr "5\.[0-9]\.[0-9][0-9]*" >NUL && ( +del/q "%UserProfile%\桌面\QQ音乐.lnk" >NUL 2>NUL +del/q "%AllUsersProfile%\桌面\QQ音乐.lnk" >NUL 2>NUL +rd/s/q "%UserProfile%\「开始」菜单\程序\TencentVideoMPlayer"2>NUL +rd/s/q "%AllUsersProfile%\「开始」菜单\程序\TencentVideoMPlayer"2>NUL +rd/s/q "%UserProfile%\「开始」菜单\程序\腾讯软件\QQ音乐"2>NUL +rd/s/q "%AllUsersProfile%\「开始」菜单\程序\腾讯软件\QQ音乐"2>NUL ) +ver|findstr "\<6\.[0-9]\.[0-9][0-9]*\> \<10\.[0-9]\.[0-9][0-9]*\>" >NUL && ( +del/q "%Public%\Desktop\QQ音乐.lnk" >NUL 2>NUL +del/q "%UserProfile%\Desktop\QQ音乐.lnk" >NUL 2>NUL +rd/s/q "%AppData%\Microsoft\Windows\Start Menu\Programs\TencentVideoMPlayer"2>NUL +rd/s/q "%ProgramData%\Microsoft\Windows\Start Menu\Programs\TencentVideoMPlayer"2>NUL +rd/s/q "%AppData%\Microsoft\Windows\Start Menu\Programs\腾讯软件\QQ音乐"2>NUL +rd/s/q "%ProgramData%\Microsoft\Windows\Start Menu\Programs\腾讯软件\QQ音乐"2>NUL ) + +::清除系统程序卸载项 +reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\QQMusic" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\QQMusic" /f /reg:32 >NUL 2>NUL + +::清除注册表 +reg delete "HKCU\Software\Tencent\QQMusic" /F>NUL 2>NUL +reg delete "HKLM\Software\Tencent\QQMusic" /F>NUL 2>NUL +reg delete "HKLM\SOFTWARE\Tencent\Components" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Tencent\QQMusic" /f /reg:32 >NUL 2>NUL + +reg delete "HKCU\Software\Classes\.mflac" /f >NUL 2>NUL +reg delete "HKCU\Software\Classes\.mgg" /f >NUL 2>NUL +reg delete "HKCU\Software\Classes\.qmc0" /f >NUL 2>NUL +reg delete "HKCU\Software\Classes\.qmc2" /f >NUL 2>NUL +reg delete "HKCU\Software\Classes\.qmc3" /f >NUL 2>NUL +reg delete "HKCU\Software\Classes\.qmc4" /f >NUL 2>NUL +reg delete "HKCU\Software\Classes\.qmc6" /f >NUL 2>NUL +reg delete "HKCU\Software\Classes\.qmc8" /f >NUL 2>NUL +reg delete "HKCU\Software\Classes\.qmcflac" /f >NUL 2>NUL +reg delete "HKCU\Software\Classes\.qsc3" /f >NUL 2>NUL +reg delete "HKCU\Software\Classes\.tkm" /f >NUL 2>NUL +reg delete "HKCU\Software\Classes\QQMusic.mflac" /f >NUL 2>NUL +reg delete "HKCU\Software\Classes\QQMusic.mgg" /f >NUL 2>NUL +reg delete "HKCU\Software\Classes\QQMusic.qmc0" /f >NUL 2>NUL +reg delete "HKCU\Software\Classes\QQMusic.qmc2" /f >NUL 2>NUL +reg delete "HKCU\Software\Classes\QQMusic.qmc3" /f >NUL 2>NUL +reg delete "HKCU\Software\Classes\QQMusic.qmc4" /f >NUL 2>NUL +reg delete "HKCU\Software\Classes\QQMusic.qmc6" /f >NUL 2>NUL +reg delete "HKCU\Software\Classes\QQMusic.qmc8" /f >NUL 2>NUL +reg delete "HKCU\Software\Classes\QQMusic.qmcflac" /f >NUL 2>NUL +reg delete "HKCU\Software\Classes\QQMusic.qsc3" /f >NUL 2>NUL +reg delete "HKCU\Software\Classes\QQMusic.tkm" /f >NUL 2>NUL + +reg delete "HKLM\SOFTWARE\Classes\.mflac" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\.mgg" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\.qmc0" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\.qmc2" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\.qmc3" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\.qmc4" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\.qmc6" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\.qmc8" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\.qmcflac" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\.qsc3" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\.tkm" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Applications\DiagTools.exe" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Applications\QQMusicUninst.exe" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\QQMusic.mflac" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\QQMusic.mgg" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\QQMusic.qmc0" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\QQMusic.qmc2" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\QQMusic.qmc3" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\QQMusic.qmc4" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\QQMusic.qmc6" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\QQMusic.qmc8" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\QQMusic.qmcflac" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\QQMusic.qsc3" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\QQMusic.tkm" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION" /v "QQMusic.exe" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION" /v "QQMusicIE.exe" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_DISABLE_NAVIGATION_SOUNDS" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Microsoft\Internet Explorer\ProtocolExecute\tencent" /f >NUL 2>NUL + +ECHO.&ECHO Done. +ECHO.&ECHO Modded by www.423down.com + +for %%a in (C D E F G H I G K L M N O P Q R S T U V W X Y Z) do rd /s/q "%%a:\QQMusicCache" >NUL 2>NUL +PUSHD .. & RD /S/Q "%~DP0" >NUL 2>NUL diff --git a/scripts/shared.mjs b/scripts/shared.mjs new file mode 100644 index 00000000000..e2c87430206 --- /dev/null +++ b/scripts/shared.mjs @@ -0,0 +1,28 @@ +import * as hash from 'hash-wasm'; + +// via https://codeburst.io/javascript-async-await-with-foreach-b6ba62bbf404 +const asyncForEach = async (array, callback) => { + for (let index = 0; index < array.length; index++) { + await callback(array[index], index, array); + } +} + +async function getHash(blob) { + const data = new Uint8Array(blob) + const sha1 = await hash.sha1(data); + const sha256 = await hash.sha256(data); + const sha512 = await hash.sha512(data); + + const hashes = [ + `sha1:${sha1}`, + `sha256:${sha256}`, + `sha512:${sha512}` + ]; + + return hashes; + } + +export { + asyncForEach, + getHash +}; \ No newline at end of file diff --git a/scripts/sunshine/install-service.bat b/scripts/sunshine/install-service.bat new file mode 100644 index 00000000000..f6fc23e2467 --- /dev/null +++ b/scripts/sunshine/install-service.bat @@ -0,0 +1,24 @@ +@echo off + +set SERVICE_NAME=sunshinesvc +set SERVICE_BIN="%~dp0\tools\sunshinesvc.exe" +set SERVICE_START_TYPE=auto + +rem Check if sunshinesvc already exists +sc qc %SERVICE_NAME% > nul 2>&1 +if %ERRORLEVEL%==0 ( + rem Stop the existing service if running + net stop %SERVICE_NAME% + + rem Reconfigure the existing service + set SC_CMD=config +) else ( + rem Create a new service + set SC_CMD=create +) + +rem Run the sc command to create/reconfigure the service +sc %SC_CMD% %SERVICE_NAME% binPath= %SERVICE_BIN% start= %SERVICE_START_TYPE% + +rem Start the new service +net start %SERVICE_NAME% diff --git a/scripts/sunshine/uninstall-service.bat b/scripts/sunshine/uninstall-service.bat new file mode 100644 index 00000000000..c188790460d --- /dev/null +++ b/scripts/sunshine/uninstall-service.bat @@ -0,0 +1,7 @@ +@echo off + +set SERVICE_NAME=sunshinesvc + +net stop %SERVICE_NAME% + +sc delete %SERVICE_NAME% diff --git a/scripts/tachidesk-server/tachidesk-debug.ps1 b/scripts/tachidesk-server/tachidesk-debug.ps1 new file mode 100644 index 00000000000..6654b8bb149 --- /dev/null +++ b/scripts/tachidesk-server/tachidesk-debug.ps1 @@ -0,0 +1,5 @@ +$currentdir = (Get-Item -Path ".\").FullName +Set-Location $PSScriptRoot +$out = ".\Tachidesk Debug Launcher.bat" +Start-Process $out -NoNewWindow +Set-Location $currentdir diff --git a/scripts/tachidesk-server/tachidesk-electron.ps1 b/scripts/tachidesk-server/tachidesk-electron.ps1 new file mode 100644 index 00000000000..b197db3c2c9 --- /dev/null +++ b/scripts/tachidesk-server/tachidesk-electron.ps1 @@ -0,0 +1,5 @@ +$currentdir = (Get-Item -Path ".\").FullName +Set-Location $PSScriptRoot +$out = ".\Tachidesk Electron Launcher.bat" +Start-Process $out -NoNewWindow +Set-Location $currentdir diff --git a/scripts/tachidesk-server/tachidesk.ps1 b/scripts/tachidesk-server/tachidesk.ps1 new file mode 100644 index 00000000000..1e17f156272 --- /dev/null +++ b/scripts/tachidesk-server/tachidesk.ps1 @@ -0,0 +1,5 @@ +$currentdir = (Get-Item -Path ".\").FullName +Set-Location $PSScriptRoot +$out = ".\Tachidesk Browser Launcher.bat" +Start-Process $out -NoNewWindow +Set-Location $currentdir diff --git a/scripts/test.mjs b/scripts/test.mjs new file mode 100644 index 00000000000..9f57ee8854a --- /dev/null +++ b/scripts/test.mjs @@ -0,0 +1,44 @@ +// Dependencies +import { asyncForEach, getHash } from './shared.mjs'; +import { stable, prerelease } from './versions.mjs'; +import fs from 'fs/promises'; +import isCI from 'is-ci'; +import MFH from 'make-fetch-happen'; +import path from 'path'; +import test from 'ava'; + +const fetch = MFH.defaults({ + cacheManager: '.cache' +}); + +const __dirname = path.resolve(path.dirname('')); + +const allVersions = [...stable.v2, ...prerelease.v3, ...stable.v3]; + +// TODO: test all versions +asyncForEach(allVersions, async version => { + const major = version[0]; + const directory = (/\d(a|b|rc)\d*$/.test(version) === true) ? `NSIS%20${major}%20Pre-release` : `NSIS%20${major}`; + const url = isCI + ? `https://downloads.sourceforge.net/project/nsis/${directory}/${version}/nsis-${version}.zip` + : `https://netcologne.dl.sourceforge.net/project/nsis/${directory}/${version}/nsis-${version}.zip`; + + await test(`NSIS v${version}`, async t => { + let response = await fetch(url); + + if (!response.ok) { + t.log(response.statusText); + t.pass('Skipping Test'); + } + + const manifest = await fs.readFile(path.join(__dirname, 'bucket', `nsis-${version}.json`), 'utf8'); + const hashes = JSON.parse(manifest).hash; + const sha512 = hashes.filter(item => item.startsWith('sha512:'))[0]; + + const hash = (await getHash(await response.arrayBuffer())).filter(item => item.startsWith('sha512:'))[0]; + const [, actual] = hash.split(':'); + const [, expected] = sha512.split(':'); + + t.is(actual, expected); + }); +}); diff --git a/scripts/tete009/tmemutil.ini b/scripts/tete009/tmemutil.ini new file mode 100644 index 00000000000..076731cb9ab --- /dev/null +++ b/scripts/tete009/tmemutil.ini @@ -0,0 +1,57 @@ +; http://www1.plala.or.jp/tete009/en-US/software.html#TMOZFAQ_INI +; https://sourceforge.net/p/libportable/wiki +; SafeEx --Security Enhancements ( 0 Disabled; 1 Enabled ) +; Portable --Portable Mode ( 0 Disabled; 1 Enabled ) +; EnableWhiteList --Enable Process White List ( 0 Disabled; 1 Enabled ) +; CreateCrashDump --Create DMP file when crashing ( 0 Disabled; 1 Enabled ) +; Bosskey --Whether to enable the boss key ( 0 Disabled; 1 Enabled ) +; ProcessAffinityMask --Process balance ( 0 Disabled; 1 Enabled ) +[General] +SafeEx=0 +Portable=1 +EnableWhiteList=0 +PortableDataPath=../Profiles +CreateCrashDump=0 +CrashDumpType=0 +GdiBatchLimit=0 +ProcessAffinityMask=0 +Bosskey=1 +ProxyExe=1 +DisableScan=0 +OnTabs=0 +Update=1 +DisDedicate=1 + +; Support for environment variables +; TmpDataPath --Custom Temp File Directory +; NpluginPath --Custom Plugin Path +; VimpPentaHome --Vimperator/Pentadactyl's home Directory +[Env] +; MOZ_NO_REMOTE=1 +TmpDataPath=../Cache +NpluginPath=../Firefox/Plugins +TmpDataPath= +VimpPentaHome= + +; Process white list (should be no more than 16), support wildcard +; (;) is the comment symbol. +[whitelist] +Path1=%ProgramFiles%\Internet Explorer\iexplore.exe +; Path2=c:\windows\system32\cmd.exe +; Path3=*xThunder.exe +; Path4=*opentext22.dll +; Path5=*WordStrokeHelper32.dll +; Path6=*AM32-*.dll +; Path7=../local/goagent.exe +; Path8= +; Path9= +; Path10= + +; When Bosskey=1, the section is in effect. If the keys following set is wrong or no set, +; the default boss key is Ctrl+Shift+~ +; Hotkey Settings must be the Decimal format of Virtual Key Codes, divided by "+" +; for example, 02+192 is on behalf of Ctrl+~,02+04+188 is on behalf of Ctrl+Shift+, +[attach] +CpuUse=25 +; Hotkey=02+192 +; ExPath="%windir%\system32\cscript.exe ../run.vbs,0" diff --git a/scripts/thunder11/install.bat b/scripts/thunder11/install.bat new file mode 100644 index 00000000000..45bbb6d7e9d --- /dev/null +++ b/scripts/thunder11/install.bat @@ -0,0 +1,178 @@ +@ECHO OFF +REG QUERY "HKU\S-1-5-19">NUL 2>&1 || ( +reg add "HKCU\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers" /f /v "%~dp0Program\Thunder.exe" /d "~ RUNASADMIN" >NUL 2>NUL +) +REG QUERY "HKU\S-1-5-19">NUL 2>&1 || (powershell -Command "Start-Process '%~sdpnx0' -Verb RunAs"&&EXIT) + +ver|findstr "5\.[0-9]\.[0-9][0-9]*" > NUL && ( +ECHO.&ECHO 当前版本不支持WinXP &PAUSE>NUL&EXIT) + +taskkill /f /im XMP.exe >NUL 2>NUL +taskkill /f /im XLLiveUD* >NUL 2>NUL +taskkill /f /im Thunder* /T >NUL 2>NUL +taskkill /f /im xlbrowsershell* >NUL 2>NUL +taskkill /f /im DownloadSDKServer* >NUL 2>NUL + +::删除相关残留文件 +rd/s/q "%TEMP%\Xmp"2>NUL +rd/s/q "%TEMP%\xlwfp"2>NUL +rd/s/q "%TEMP%\Xunlei"2>NUL +rd/s/q "%TEMP%\Thunder"2>NUL +rd/s/q "%TEMP%\XLLiveUD"2>NUL +rd/s/q "%TEMP%\XLNonIESvr"2>NUL +rd/s/q "%TEMP%\ThunderLiveUD"2>NUL +rd/s/q "%TEMP%\ThunderInstall"2>NUL +rd/s/q "%TEMP%\Thunder Network"2>NUL +rd/s/q "%AppData%\迅雷" 2>NUL +rd/s/q "%AppData%\迅雷X" 2>NUL +rd/s/q "%AppData%\迅雷11" 2>NUL +rd/s/q "%AppData%\thunder"2>NUL +rd/s/q "%AppData%\thunderx"2>NUL +rd/s/q "%AppData%\XLGameBox"2>NUL +rd/s/q "%AppData%\迅雷播放组件" 2>NUL +rd/s/q "%AppData%\Thunder Network"2>NUL +rd/s/q "%ProgramData%\USOShared"2>NUL +rd/s/q "%ProgramData%\USOPrivate"2>NUL +rd/s/q "%ProgramData%\Thunder Network"2>NUL +rd/s/q "%PUBLIC%\Documents\Thunder Network"2>NUL +rd/s/q "%CommonProgramW6432%\Thunder Network"2>NUL +del/q "%ProgramData%\APlayerCodecs3.exe" >NUL 2>NUL +rd/s/q "%CommonProgramFiles(x86)%\Thunder Network"2>NUL +rd/s/q "%UserProfile%\AppData\LocalLow\XunLei"2>NUL +rd/s/q "%UserProfile%\AppData\LocalLow\XunleiBHO"2>NUL +del/q "%UserProfile%\AppData\APlayerCodecs3.exe" >NUL 2>NUL +rd/s/q "%UserProfile%\AppData\LocalLow\Thunder Network"2>NUL +del/q "%AppData%\Microsoft\Windows\Libraries\迅雷下载.library-ms" >NUL 2>NUL + +::允许防火墙入站规则 +netsh advfirewall firewall add rule name="Thunder" dir=in action=allow program="%~dp0Program\Thunder.exe" >NUL 2>NUL +netsh advfirewall firewall add rule name="DownloadSDKServer" dir=in action=allow program="%~dp0Program\resources\bin\SDK\DownloadSDKServer.exe" >NUL 2>NUL + +::阻止后台P2P偷偷上传 +rd/s/q "%PUBLIC%\Thunder Network"2>NUL +md "%PUBLIC%\Thunder Network\cid_store.dat" 2>NUL +md "%PUBLIC%\Thunder Network\tp_common_info.dat" 2>NUL +md "%PUBLIC%\Thunder Network\emule_upload_list.dat" 2>NUL + +::迅雷所在位置检测标记 +IF NOT EXIST "%ProgramW6432%" ( +reg add "HKLM\SOFTWARE\Thunder Network\ThunderOem\thunder_backwnd" /f /v "dir" /d "%~dp0\" >NUL 2>NUL +reg add "HKLM\SOFTWARE\Thunder Network\ThunderOem\thunder_backwnd" /f /v "instdir" /d "%~dp0\" >NUL 2>NUL +reg add "HKLM\SOFTWARE\Thunder Network\ThunderOem\thunder_backwnd" /f /v "Path" /d "%~dp0Program\Thunder.exe" >NUL 2>NUL +) ELSE ( +reg add "HKLM\SOFTWARE\Thunder Network\ThunderOem\thunder_backwnd" /f /v "dir" /d "%~dp0\" /reg:32 >NUL 2>NUL +reg add "HKLM\SOFTWARE\Thunder Network\ThunderOem\thunder_backwnd" /f /v "instdir" /d "%~dp0\" /reg:32 >NUL 2>NUL +reg add "HKLM\SOFTWARE\Thunder Network\ThunderOem\thunder_backwnd" /f /v "Path" /d "%~dp0Program\Thunder.exe" /reg:32 >NUL 2>NUL +) + +::注册IE浏览器或基于IE内核程序关联组件 +regsvr32 /s "%~dp0BHO\ThunderAgent.dll" +regsvr32 /s "%~dp0BHO\ThunderAgent64.dll" +regsvr32 /s "%~dp0Program\np_tdieplat.dll" +reg add "HKCU\Software\Thunder Network\BHOEnum" /f /v "Thunder7" /d "%~dp0BHO\" >NUL 2>NUL + +::迅雷播放组件相关键值 +reg add "HKCU\SOFTWARE\Thunder Network\Xmp" /f /v "XmpCodecsState" /t REG_DWORD /d "4" >NUL 2>NUL +reg add "HKCU\SOFTWARE\Thunder Network\APlayer" /f /v "XmpCodecsState" /t REG_DWORD /d "4" >NUL 2>NUL +reg add "HKCU\SOFTWARE\Thunder Network\APlayer" /f /v "XmpCodecsUpdateState" /t REG_DWORD /d "4" >NUL 2>NUL + +::Chrme, firefox扩展检测识别路径键值项 +reg delete "HKLM\SOFTWARE\Google\Chrome\NativeMessagingHosts\com.xunlei.thunder" /f /reg:32 >NUL 2>NUL +reg add "HKLM\SOFTWARE\Google\Chrome\NativeMessagingHosts\com.xunlei.thunder" /f /ve /d "%~dp0Program\com.xunlei.thunder.json" >NUL 2>NUL +IF NOT EXIST "%ProgramW6432%" ( +reg add "HKLM\SOFTWARE\MozillaPlugins\@xunlei.com/npxunlei;version=1.0.0.2" /f /v "path" /d "%~dp0Program\npxunlei.dll" >NUL 2>NUL +) ELSE ( +reg add "HKLM\SOFTWARE\MozillaPlugins\@xunlei.com/npxunlei;version=1.0.0.2" /f /v "path" /d "%~dp0Program\npxunlei.dll" /reg:32 >NUL 2>NUL +) + +::添加网页右键菜单下载项 +reg add "HKCU\SOFTWARE\Microsoft\Internet Explorer\MenuExt\&使用&迅雷离线下载" /f /ve /d "%~dp0BHO\OfflineDownload.htm" >NUL 2>NUL +reg add "HKCU\SOFTWARE\Microsoft\Internet Explorer\MenuExt\&使用&迅雷离线下载" /f /v "Contexts" /t REG_DWORD /d "34" >NUL 2>NUL +reg add "HKCU\SOFTWARE\Microsoft\Internet Explorer\MenuExt\&使用&迅雷离线下载" /f /v "Name" /d "xl_offlinedownload" >NUL 2>NUL +reg add "HKCU\SOFTWARE\Microsoft\Internet Explorer\MenuExt\&使用&迅雷下载" /f /ve /d "%~dp0BHO\geturl.htm" >NUL 2>NUL +reg add "HKCU\SOFTWARE\Microsoft\Internet Explorer\MenuExt\&使用&迅雷下载" /f /v "Contexts" /t REG_DWORD /d "34" >NUL 2>NUL +reg add "HKCU\SOFTWARE\Microsoft\Internet Explorer\MenuExt\&使用&迅雷下载" /f /v "Name" /d "xl_geturl" >NUL 2>NUL +reg add "HKCU\SOFTWARE\Microsoft\Internet Explorer\MenuExt\&使用&迅雷下载全部链接" /f /ve /d "%~dp0BHO\GetAllUrl.htm" >NUL 2>NUL +reg add "HKCU\SOFTWARE\Microsoft\Internet Explorer\MenuExt\&使用&迅雷下载全部链接" /f /v "Contexts" /t REG_DWORD /d "243" >NUL 2>NUL +reg add "HKCU\SOFTWARE\Microsoft\Internet Explorer\MenuExt\&使用&迅雷下载全部链接" /f /v "Name" /d "xl_getallurl" >NUL 2>NUL + +::关联相关的文件类型协议 + +reg add "HKCR\.downlist" /f /ve /d "Xunlei.LSTFile.6" >NUL 2>NUL +reg add "HKCR\.td" /f /ve /d "Xunlei.TDFile.6" >NUL 2>NUL +reg add "HKCR\.thunderskin" /f /ve /d "Xunlei.ThunderSkin.6" >NUL 2>NUL +reg add "HKCR\.torrent" /f /ve /d "Xunlei.Bittorrent.6" >NUL 2>NUL +reg add "HKCR\.xlb" /f /ve /d "Xunlei.XLB.6" >NUL 2>NUL +reg add "HKCR\.xltd" /f /ve /d "Xunlei.TDFile.6" >NUL 2>NUL +reg add "HKCR\ed2k" /f /v "URL Protocol" /d "" >NUL 2>NUL +reg add "HKCR\ed2k\Shell\Open\command" /f /ve /d "\"%~dp0Program\Thunder.exe\" \"%%1\" -StartType:ed2k" >NUL 2>NUL +reg add "HKCR\magnet" /f /v "URL Protocol" /d "" >NUL 2>NUL +reg add "HKCR\magnet\Shell\Open\command" /f /ve /d "\"%~dp0Program\Thunder.exe\" \"%%1\" -StartType:magnet" >NUL 2>NUL +reg add "HKCR\thunder" /f /v "URL Protocol" /d "" >NUL 2>NUL +reg add "HKCR\thunder\Shell\Open\command" /f /ve /d "\"%~dp0Program\Thunder.exe\" \"%%1\" -StartType:thunder" >NUL 2>NUL +reg add "HKCR\thunderx" /f /v "URL Protocol" /d "" >NUL 2>NUL +reg add "HKCR\thunderx\Shell\Open\command" /f /ve /d "\"%~dp0Program\Thunder.exe\" \"%%1\" -StartType:thunderx" >NUL 2>NUL +reg add "HKCR\xlb" /f /v "URL Protocol" /d "" >NUL 2>NUL +reg add "HKCR\xlb\Shell\Open\command" /f /ve /d "\"%~dp0Program\Thunder.exe\" \"%%1\" -StartType:xlb" >NUL 2>NUL +reg add "HKCR\Xunlei.Bittorrent.6" /f /ve /d "BT种子文件" >NUL 2>NUL +reg add "HKCR\Xunlei.Bittorrent.6\DefaultIcon" /f /ve /d "%~dp0Program\TorrentFile.ico" >NUL 2>NUL +reg add "HKCR\Xunlei.Bittorrent.6\Shell\Open" /f /ve /d "使用迅雷下载该BT文件" >NUL 2>NUL +reg add "HKCR\Xunlei.Bittorrent.6\Shell\Open\command" /f /ve /d "\"%~dp0Program\Thunder.exe\" \"%%1\"" >NUL 2>NUL +reg add "HKCR\Xunlei.LSTFile.6" /f /ve /d "迅雷专有下载文件" >NUL 2>NUL +reg add "HKCR\Xunlei.LSTFile.6\DefaultIcon" /f /ve /d "%~dp0Program\XLDownloadList.ico" >NUL 2>NUL +reg add "HKCR\Xunlei.LSTFile.6\Shell\Open" /f /ve /d "使用迅雷下载该任务列表文件" >NUL 2>NUL +reg add "HKCR\Xunlei.LSTFile.6\Shell\Open\command" /f /ve /d "\"%~dp0Program\Thunder.exe\" \"%%1\"" >NUL 2>NUL +reg add "HKCR\Xunlei.TDFile.6" /f /ve /d "迅雷临时数据文件" >NUL 2>NUL +reg add "HKCR\Xunlei.TDFile.6\DefaultIcon" /f /ve /d "%~dp0Program\XLTempFile.ico" >NUL 2>NUL +reg add "HKCR\Xunlei.TDFile.6\Shell\Open" /f /ve /d "使用迅雷下载未完成文件" >NUL 2>NUL +reg add "HKCR\Xunlei.TDFile.6\Shell\Open\command" /f /ve /d "\"%~dp0Program\Thunder.exe\" \"%%1\"" >NUL 2>NUL +reg add "HKCR\Xunlei.ThunderSkin.6" /f /ve /d "迅雷X皮肤文件" >NUL 2>NUL +reg add "HKCR\Xunlei.ThunderSkin.6\DefaultIcon" /f /ve /d "%~dp0Program\thunderskin.ico" >NUL 2>NUL +reg add "HKCR\Xunlei.ThunderSkin.6\Shell\Open" /f /ve /d "为迅雷X应用该皮肤" >NUL 2>NUL +reg add "HKCR\Xunlei.ThunderSkin.6\Shell\Open\command" /f /ve /d "\"%~dp0Program\Thunder.exe\" \"%%1\"" >NUL 2>NUL +reg add "HKCR\Xunlei.XLB.6" /f /ve /d "迅雷下载合集文件" >NUL 2>NUL +reg add "HKCR\Xunlei.XLB.6\DefaultIcon" /f /ve /d "%~dp0Program\DownloadCollection.ico" >NUL 2>NUL +reg add "HKCR\Xunlei.XLB.6\Shell\Open" /f /ve /d "使用迅雷查看该下载合集文件" >NUL 2>NUL +reg add "HKCR\Xunlei.XLB.6\Shell\Open\command" /f /ve /d "\"%~dp0Program\Thunder.exe\" \"%%1\"" >NUL 2>NUL + + +reg add "HKCU\Software\Classes\.downlist" /f /ve /d "Xunlei.LSTFile.6" >NUL 2>NUL +reg add "HKCU\Software\Classes\.td" /f /ve /d "Xunlei.TDFile.6" >NUL 2>NUL +reg add "HKCU\Software\Classes\.thunderskin" /f /ve /d "Xunlei.ThunderSkin.6" >NUL 2>NUL +reg add "HKCU\Software\Classes\.torrent" /f /ve /d "Xunlei.Bittorrent.6" >NUL 2>NUL +reg add "HKCU\Software\Classes\.xlb" /f /ve /d "Xunlei.XLB.6" >NUL 2>NUL +reg add "HKCU\Software\Classes\.xltd" /f /ve /d "Xunlei.TDFile.6" >NUL 2>NUL +reg add "HKCU\Software\Classes\ed2k" /f /v "URL Protocol" /d "" >NUL 2>NUL +reg add "HKCU\Software\Classes\ed2k\Shell\Open\command" /f /ve /d "\"%~dp0Program\Thunder.exe\" \"%%1\" -StartType:ed2k" >NUL 2>NUL +reg add "HKCU\Software\Classes\magnet" /f /v "URL Protocol" /d "" >NUL 2>NUL +reg add "HKCU\Software\Classes\magnet\Shell\Open\command" /f /ve /d "\"%~dp0Program\Thunder.exe\" \"%%1\" -StartType:magnet" >NUL 2>NUL +reg add "HKCU\Software\Classes\thunder" /f /v "URL Protocol" /d "" >NUL 2>NUL +reg add "HKCU\Software\Classes\thunder\Shell\Open\command" /f /ve /d "\"%~dp0Program\Thunder.exe\" \"%%1\" -StartType:thunder" >NUL 2>NUL +reg add "HKCU\Software\Classes\thunderx" /f /v "URL Protocol" /d "" >NUL 2>NUL +reg add "HKCU\Software\Classes\thunderx\Shell\Open\command" /f /ve /d "\"%~dp0Program\Thunder.exe\" \"%%1\" -StartType:thunderx" >NUL 2>NUL +reg add "HKCU\Software\Classes\xlb" /f /v "URL Protocol" /d "" >NUL 2>NUL +reg add "HKCU\Software\Classes\xlb\Shell\Open\command" /f /ve /d "\"%~dp0Program\Thunder.exe\" \"%%1\" -StartType:xlb" >NUL 2>NUL +reg add "HKCU\Software\Classes\Xunlei.Bittorrent.6" /f /ve /d "BT种子文件" >NUL 2>NUL +reg add "HKCU\Software\Classes\Xunlei.Bittorrent.6\DefaultIcon" /f /ve /d "%~dp0Program\TorrentFile.ico" >NUL 2>NUL +reg add "HKCU\Software\Classes\Xunlei.Bittorrent.6\Shell\Open" /f /ve /d "使用迅雷下载该BT文件" >NUL 2>NUL +reg add "HKCU\Software\Classes\Xunlei.Bittorrent.6\Shell\Open\command" /f /ve /d "\"%~dp0Program\Thunder.exe\" \"%%1\"" >NUL 2>NUL +reg add "HKCU\Software\Classes\Xunlei.LSTFile.6" /f /ve /d "迅雷专有下载文件" >NUL 2>NUL +reg add "HKCU\Software\Classes\Xunlei.LSTFile.6\DefaultIcon" /f /ve /d "%~dp0Program\XLDownloadList.ico" >NUL 2>NUL +reg add "HKCU\Software\Classes\Xunlei.LSTFile.6\Shell\Open" /f /ve /d "使用迅雷下载该任务列表文件" >NUL 2>NUL +reg add "HKCU\Software\Classes\Xunlei.LSTFile.6\Shell\Open\command" /f /ve /d "\"%~dp0Program\Thunder.exe\" \"%%1\"" >NUL 2>NUL +reg add "HKCU\Software\Classes\Xunlei.TDFile.6" /f /ve /d "迅雷临时数据文件" >NUL 2>NUL +reg add "HKCU\Software\Classes\Xunlei.TDFile.6\DefaultIcon" /f /ve /d "%~dp0Program\XLTempFile.ico" >NUL 2>NUL +reg add "HKCU\Software\Classes\Xunlei.TDFile.6\Shell\Open" /f /ve /d "使用迅雷下载未完成文件" >NUL 2>NUL +reg add "HKCU\Software\Classes\Xunlei.TDFile.6\Shell\Open\command" /f /ve /d "\"%~dp0Program\Thunder.exe\" \"%%1\"" >NUL 2>NUL +reg add "HKCU\Software\Classes\Xunlei.ThunderSkin.6" /f /ve /d "迅雷X皮肤文件" >NUL 2>NUL +reg add "HKCU\Software\Classes\Xunlei.ThunderSkin.6\DefaultIcon" /f /ve /d "%~dp0Program\thunderskin.ico" >NUL 2>NUL +reg add "HKCU\Software\Classes\Xunlei.ThunderSkin.6\Shell\Open" /f /ve /d "为迅雷X应用该皮肤" >NUL 2>NUL +reg add "HKCU\Software\Classes\Xunlei.ThunderSkin.6\Shell\Open\command" /f /ve /d "\"%~dp0Program\Thunder.exe\" \"%%1\"" >NUL 2>NUL +reg add "HKCU\Software\Classes\Xunlei.XLB.6" /f /ve /d "迅雷下载合集文件" >NUL 2>NUL +reg add "HKCU\Software\Classes\Xunlei.XLB.6\DefaultIcon" /f /ve /d "%~dp0Program\DownloadCollection.ico" >NUL 2>NUL +reg add "HKCU\Software\Classes\Xunlei.XLB.6\Shell\Open" /f /ve /d "使用迅雷查看该下载合集文件" >NUL 2>NUL +reg add "HKCU\Software\Classes\Xunlei.XLB.6\Shell\Open\command" /f /ve /d "\"%~dp0Program\Thunder.exe\" \"%%1\"" >NUL 2>NUL + +ASSOC .=. >NUL 2>NUL + +ECHO.&ECHO 完成 &TIMEOUT /t 2 >NUL&EXIT diff --git a/scripts/thunder11/uninstall.bat b/scripts/thunder11/uninstall.bat new file mode 100644 index 00000000000..0ba3895da68 --- /dev/null +++ b/scripts/thunder11/uninstall.bat @@ -0,0 +1,304 @@ +@ECHO OFF&(PUSHD "%~DP0")&(REG QUERY "HKU\S-1-5-19">NUL 2>&1)||( +powershell -Command "Start-Process '%~sdpnx0' -Verb RunAs"&&EXIT) + +taskkill /f /im XMP.exe >NUL 2>NUL +taskkill /f /im XLLiveUD* >NUL 2>NUL +taskkill /f /im Thunder* /T >NUL 2>NUL +taskkill /f /im xlbrowsershell* >NUL 2>NUL +taskkill /f /im DownloadSDKServer* >NUL 2>NUL + +::卸载IE浏览器或IE内核程序关联组件 +regsvr32 /s /u BHO\ThunderAgent.dll +regsvr32 /s /u BHO\ThunderAgent64.dll +regsvr32 /s /u Program\np_tdieplat.dll +start /wait Program\Thunder.exe -unassociate:all -unregprotocol:all + +::删除防火墙入站规则 +netsh advfirewall firewall delete rule name="Thunder" dir=in program="%~dp0Program\Thunder.exe" >NUL 2>NUL +netsh advfirewall firewall delete rule name="DownloadSDKServer" dir=in program="%~dp0Program\resources\bin\SDK\DownloadSDKServer.exe" >NUL 2>NUL + +::清除系统后台残留文件 +rd/s/q "%TEMP%\Xmp"2>NUL +rd/s/q "%TEMP%\xlwfp"2>NUL +rd/s/q "%TEMP%\Xunlei"2>NUL +rd/s/q "%TEMP%\Thunder"2>NUL +rd/s/q "%TEMP%\XLLiveUD"2>NUL +rd/s/q "%TEMP%\XLNonIESvr"2>NUL +rd/s/q "%TEMP%\ThunderLiveUD"2>NUL +rd/s/q "%TEMP%\ThunderInstall"2>NUL +rd/s/q "%TEMP%\Thunder Network"2>NUL +rd/s/q "%AppData%\迅雷" 2>NUL +rd/s/q "%AppData%\迅雷X" 2>NUL +rd/s/q "%AppData%\迅雷11" 2>NUL +rd/s/q "%AppData%\thunder"2>NUL +rd/s/q "%AppData%\thunderx"2>NUL +rd/s/q "%AppData%\XLGameBox"2>NUL +rd/s/q "%AppData%\迅雷播放组件" 2>NUL +rd/s/q "%AppData%\Thunder Network"2>NUL +rd/s/q "%ProgramData%\USOShared"2>NUL +rd/s/q "%ProgramData%\USOPrivate"2>NUL +rd/s/q "%ProgramData%\Thunder Network"2>NUL +rd/s/q "%CommonProgramW6432%\Thunder Network" 2>NUL +rd/s/q "%CommonProgramFiles(x86)%\Thunder Network"2>NUL +rd/s/q "%UserProfile%\AppData\LocalLow\XunLei"2>NUL +rd/s/q "%UserProfile%\AppData\LocalLow\XunleiBHO"2>NUL +rd/s/q "%UserProfile%\AppData\LocalLow\Thunder Network"2>NUL +del /q "%UserProfile%\AppData\APlayerCodecs3.exe" >NUL 2>NUL +del /q "%ProgramData%\APlayerCodecs3.exe" >NUL 2>NUL +rd/s/q "%PUBLIC%\Thunder Network"2>NUL +rd/s/q "%PUBLIC%\Documents\Thunder Network"2>NUL + +::清除迅雷目录残留文件 +del "Thunder.lnk " >NUL 2>NUL +del "Program\stat.dat" >NUL 2>NUL +del "Program\detect_stat.dat" >NUL 2>NUL +del "Program\latest_thunder_stat.xml" >NUL 2>NUL +del "Program\resources\bin\TBC\xlbrowser.ini" >NUL 2>NUL +rd /s /q "Program\resources\bin\TBC\Data"2>NUL + +::清除桌面和开始菜单快捷方式 +del /q "%Public%\Desktop\迅雷.lnk" >NUL 2>NUL +del /q "%UserProfile%\Desktop\迅雷.lnk" >NUL 2>NUL +rd/s/q "%AppData%\Microsoft\Windows\Start Menu\Programs\迅雷软件"2>NUL +rd/s/q "%ProgramData%\Microsoft\Windows\Start Menu\Programs\迅雷软件"2>NUL +del /q "%AppData%\Microsoft\Windows\Libraries\迅雷下载.library-ms" >NUL 2>NUL + +::清除注册表相关残留键值 +reg delete "HKCU\Software\Thunder Network" /f >NUL 2>NUL +reg delete "HKLM\Software\Thunder Network" /f >NUL 2>NUL +reg delete "HKLM\Software\Thunder Network" /f /reg:32 >NUL 2>NUL + +reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\thunder" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\thunder" /f /reg:32 >NUL 2>NUL +reg delete "HKCU\SOFTWARE\MozillaPlugins\@xunlei.com/npxunlei;version=1.0.0.2" /f >NUL 2>NUL +reg delete "HKLM\Software\MozillaPlugins\@xunlei.com/npxunlei;version=1.0.0.2" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\MozillaPlugins\@xunlei.com/npxunlei;version=1.0.0.2" /f >NUL 2>NUL +reg delete "HKLM\Software\MozillaPlugins\@xunlei.com/npxunlei;version=1.0.0.2" /f /reg:32 >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Mozilla\NativeMessagingHosts\com.xunlei.thunder" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Mozilla\NativeMessagingHosts\com.xunlei.thunder" /f >NUL 2>NUL +reg delete "HKCU\Software\Google\Chrome\NativeMessagingHosts\com.xunlei.thunder" /f >NUL 2>NUL +reg delete "HKLM\Software\Google\Chrome\NativeMessagingHosts\com.xunlei.thunder" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Google\Chrome\NativeMessagingHosts\com.xunlei.thunder" /f /reg:32 >NUL 2>NUL +reg delete "HKCU\Software\Microsoft\Internet Explorer\MenuExt\使用迅雷下载" /f >NUL 2>NUL +reg delete "HKCU\Software\Microsoft\Internet Explorer\MenuExt\使用迅雷下载全部链接" /f >NUL 2>NUL +reg delete "HKCUHKCU\SOFTWARE\Microsoft\Internet Explorer\MenuExt\&使用&迅雷离线下载" /f >NUL 2>NUL +reg delete "HKCUHKCU\SOFTWARE\Microsoft\Internet Explorer\MenuExt\&使用&迅雷下载" /f >NUL 2>NUL +reg delete "HKCUHKCU\SOFTWARE\Microsoft\Internet Explorer\MenuExt\&使用&迅雷下载全部链接" /f >NUL 2>NUL + +reg delete "HKLM\SOFTWARE\Classes\APlayer3.Player" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\APlayer3.Player.1" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\APlayerUI.Player" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\APlayerUI.Player.1" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\*\shellex\ContextMenuHandlers\AXmpLite" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\AppID\{06A28264-EF0A-48E5-AD42-1327E5328955}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\AppID\{99DC6162-65E4-476E-87CE-9E5944D323E2}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\AppID\{AD13FB62-BF1B-4434-9BC3-20678B5287DE}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\AppID\ShlExt.DLL" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\AppID\UserAgent.DLL" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\AppID\XunleiBHO64.DLL" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{002AE4F2-96AB-4dfa-AE2E-605217F8A84C}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{002AE4F2-96AB-4dfa-AE2E-605217F8A84C}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{004B0726-A010-4abf-8556-FCDB7F1FCA1E}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{0119CCC1-8EAC-43E9-AA7D-87F64B44AA4D}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{67486EAA-ED7F-4F84-82EB-26F23F57D690}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{889D2FEB-5411-4565-8998-1DD2C5261283}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{8F556DA3-987D-47b0-AA88-EB8D52FE1B9A}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{2C543E47-732B-4EDE-8AC9-C3D27C861FAA}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{559BAA6F-E3FE-4B0B-90D7-2C0BFA5145F1}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{7BD58878-F0AE-406B-B5CE-871C4E01B237}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{CF1FC792-7F5C-4DB0-A00A-D209F5FFBD16}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\MiniXmpShlExt.ContextMenuExt" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\MiniXmpShlExt.ContextMenuExt.1" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Thunder.MyComputerIcon" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Thunder.MyComputerIcon.1" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\TypeLib\{01560F06-CEE2-46FF-8997-308A366175E9}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\TypeLib\{1957CD06-E83F-477D-AD1A-5F6B8C30C561}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\TypeLib\{26D657AE-A466-4F44-AB1D-5CFFFADBED97}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\TypeLib\{32648605-550A-40FA-8F3B-90470FF9EE1F}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\TypeLib\{5E1356B8-3AD9-48AF-AA80-D76E5415E81B}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\TypeLib\{64A3A559-FFBB-49BA-A947-C6104804D644}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\TypeLib\{97830570-35FE-4195-83DE-30E79B718713}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\TypeLib\{A9757030-96F6-485E-A8AB-5B5137462472}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\UserAgent.Thunder59Agent" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\UserAgent.Thunder59Agent.1" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{1E935CBE-2951-48FE-93C8-4B7F1E5AA14E}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{22F1FF40-C53F-4360-A70E-F06540CB986B}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{23A860E9-0C41-4E01-9206-D3FC0E413645}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{485463B7-8FB2-4B3B-B29B-8B919B0EACCE}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{485463B7-8FB2-4B3B-B29B-8B919B0EACCE}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{6EE9CD3E-A386-4DAE-9737-A759DBF927AE}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{A1E760B9-78EE-4570-909A-19ABF149F31E}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{A63DEB30-9A77-492C-A380-3CA64A53C9EF}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{A9332148-C691-4B9D-91FC-B9C461DBE9DD}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{C46DFF24-22C0-4C8F-87D0-5CADE3C2ADD6}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{DE05CF4A-7B0A-4775-B5E5-396244938679}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{F19169FA-7EB8-45EB-8800-0D1F7C88F553}" /f /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{2C543E47-732B-4EDE-8AC9-C3D27C861FAA}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{559BAA6F-E3FE-4B0B-90D7-2C0BFA5145F1}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{7BD58878-F0AE-406B-B5CE-871C4E01B237}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{C46DFF24-22C0-4C8F-87D0-5CADE3C2ADD6}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{CF1FC792-7F5C-4DB0-A00A-D209F5FFBD16}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{F19169FA-7EB8-45EB-8800-0D1F7C88F553}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.3g2" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.3gp" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.3gp2" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.3gpp" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.aac" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.ac3" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.acc" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.aiff" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.amr" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.amv" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.ape" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.asf" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.ass" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.au" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.avi" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.bik" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.cda" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.csf" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.divx" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.dts" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.dvd" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.evo" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.f4v" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.f5v" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.flac" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.flv" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.hflv" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.hlv" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.hmkv" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.hmp4" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.letv" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.m1a" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.m1v" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.m2a" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.m2p" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.m2ts" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.m2v" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.m4a" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.m4b" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.m4p" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.m4r" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.m4v" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.mid" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.midi" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.mk5" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.mka" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.mkv" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.mod" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.mov" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.mp2" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.mp2v" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.mp3" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.mp4" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.mp5" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.mpa" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.mpc" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.mpe" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.mpeg" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.mpeg1" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.mpeg2" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.mpeg4" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.mpg" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.mpv2" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.mts" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.oga" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.ogg" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.ogm" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.ogv" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.ogx" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.pmp" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.psb" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.pva" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.qt" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.ra" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.ram" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.rm" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.rmvb" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.rpm" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.rt" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.scm" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.smi" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.smil" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.srt" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.ssa" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.sub" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.sup" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.swf" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.tp" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.tpr" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.ts" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.tta" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.usf" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.vob" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.vp6" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.wav" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.wm" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.wma" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.wmp" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.wmv" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.wv" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.xlmv" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Clients\Media\XMPLite" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Browser Helper Objects\{004B0726-A010-4ABF-8556-FCDB7F1FCA1E}" /f >NUL 2>NUL +reg delete "HKLM\SYSTEM\CurrentControlSet\Control\Class\{5DEB2780-5239-47C2-AEB7-B8BD9BEB3F80}" /f >NUL 2>NUL +reg delete "HKLM\SYSTEM\CurrentControlSet\Control\Class\{9FB5F2D4-203E-41D2-932F-6DE145F9756C}" /f >NUL 2>NUL +reg delete "HKLM\SYSTEM\CurrentControlSet\Services\XLGuard" /f >NUL 2>NUL +reg delete "HKLM\SYSTEM\CurrentControlSet\Services\XLServicePlatform" /f >NUL 2>NUL +reg delete "HKLM\SYSTEM\CurrentControlSet\Services\XLWFP" /f >NUL 2>NUL + +reg delete "HKCU\CLSID\{004B0726-A010-4abf-8556-FCDB7F1FCA1E}" /f >NUL 2>NUL +reg delete "HKCU\CLSID\{DE05CF4A-7B0A-4775-B5E5-396244938679}" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Classes\.downlist" /f >NUL 2>NUL +reg delete "HKCU\Software\Classes\.td" /f >NUL 2>NUL +reg delete "HKCU\Software\Classes\.thunderskin" /f >NUL 2>NUL +reg delete "HKCU\Software\Classes\.torrent" /f >NUL 2>NUL +reg delete "HKCU\Software\Classes\.xlb" /f >NUL 2>NUL +reg delete "HKCU\Software\Classes\.xltd" /f >NUL 2>NUL +reg delete "HKCU\Software\Classes\ed2k" /f >NUL 2>NUL +reg delete "HKCU\Software\Classes\magnet" /f >NUL 2>NUL +reg delete "HKCU\Software\Classes\thunder" /f >NUL 2>NUL +reg delete "HKCU\Software\Classes\thunderx" /f >NUL 2>NUL +reg delete "HKCU\Software\Classes\xlb" /f >NUL 2>NUL +reg delete "HKCU\Software\Classes\Xunlei.Bittorrent.6" /f >NUL 2>NUL +reg delete "HKCU\Software\Classes\Xunlei.LSTFile.6" /f >NUL 2>NUL +reg delete "HKCU\Software\Classes\Xunlei.TDFile.6" /f >NUL 2>NUL +reg delete "HKCU\Software\Classes\Xunlei.ThunderSkin.6" /f >NUL 2>NUL +reg delete "HKCU\Software\Classes\Xunlei.XLB.6" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.torrent\OpenWithProgids" /f /v "Xunlei.Bittorrent.6" >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.xltd\OpenWithList" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.xltd\OpenWithProgids" /v "Xunlei.TDFile.6" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Mozilla\NativeMessagingHosts\com.xunlei.thunder" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\MozillaPlugins\@xunlei.com" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Thunder Network" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Ext\Stats\{002AE4F2-96AB-4dfa-AE2E-605217F8A84C}" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Ext\Stats\{485463B7-8FB2-4B3B-B29B-8B919B0EACCE}" /f >NUL 2>NUL + +reg delete "HKCR\.td" /f >NUL 2>NUL +reg delete "HKCR\xlb" /f >NUL 2>NUL +reg delete "HKCR\.xlb" /f >NUL 2>NUL +reg delete "HKCR\.xltd" /f >NUL 2>NUL +reg delete "HKCR\ed2k" /f >NUL 2>NUL +reg delete "HKCR\magnet" /f >NUL 2>NUL +reg delete "HKCR\thunder" /f >NUL 2>NUL +reg delete "HKCR\thunderx" /f >NUL 2>NUL +reg delete "HKCR\.torrent" /f >NUL 2>NUL +reg delete "HKCR\.downlist" /f >NUL 2>NUL +reg delete "HKCR\.thunderskin" /f >NUL 2>NUL +reg delete "HKCR\ThunderSkin.6" /f >NUL 2>NUL +reg delete "HKCR\Xunlei.XLB.6" /f >NUL 2>NUL +reg delete "HKCR\Xunlei.TDFile.6" /f >NUL 2>NUL +reg delete "HKCR\Xunlei.LSTFile.6" /f >NUL 2>NUL +reg delete "HKCR\Xunlei.Bittorrent.6" /f >NUL 2>NUL +reg delete "HKCR\Xunlei.ThunderSkin.6" /f >NUL 2>NUL + +reg delete "HKCU\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers" /f /v "%~dp0Program\Thunder.exe" >NUL 2>NUL + +CLS +ECHO.&ECHO 423down.com + +DEL /F/Q "%~dp0BHO\ThunderAgent*.dll" >NUL 2>NUL +IF EXIST "%~dp0BHO\ThunderAgent.dll" ren "%~dp0BHO\ThunderAgent.dll" "ThunderAgent.dll.%date:~8,2%%time:~0,2%%time:~3,2%%time:~6,2%.tmp" >NUL 2>NUL +IF EXIST "%~dp0BHO\ThunderAgent64.dll" ren "%~dp0BHO\ThunderAgent64.dll" "ThunderAgent64.dll.%date:~8,2%%time:~0,2%%time:~3,2%%time:~6,2%.tmp" >NUL 2>NUL +PUSHD .. & RD /S/Q "%~DP0" 2>NUL diff --git a/scripts/thunderx/install.bat b/scripts/thunderx/install.bat new file mode 100644 index 00000000000..9d230d53991 --- /dev/null +++ b/scripts/thunderx/install.bat @@ -0,0 +1,130 @@ +@ECHO OFF&(PUSHD "%~DP0")&(REG QUERY "HKU\S-1-5-19">NUL 2>&1)||( +powershell -Command "Start-Process '%~sdpnx0' -Verb RunAs"&&EXIT) + +ver|findstr "5\.[0-9]\.[0-9][0-9]*" > NUL && ( +ECHO.&ECHO 当前版本不支持WinXP &PAUSE>NUL&EXIT) + +taskkill /f /im XMP.exe >NUL 2>NUL +taskkill /f /im XLLiveUD* >NUL 2>NUL +taskkill /f /im Thunder* /T >NUL 2>NUL +taskkill /f /im xlbrowsershell* >NUL 2>NUL +taskkill /f /im DownloadSDKServer* >NUL 2>NUL + +::清除相关残留文件 +rd/s/q "%TEMP%\Xmp"2>NUL +rd/s/q "%TEMP%\xlwfp"2>NUL +rd/s/q "%TEMP%\Xunlei"2>NUL +rd/s/q "%TEMP%\Thunder"2>NUL +rd/s/q "%TEMP%\XLLiveUD"2>NUL +rd/s/q "%TEMP%\XLNonIESvr"2>NUL +rd/s/q "%TEMP%\ThunderLiveUD"2>NUL +rd/s/q "%TEMP%\ThunderInstall"2>NUL +rd/s/q "%TEMP%\Thunder Network"2>NUL +rd/s/q "%AppData%\迅雷" 2>NUL +rd/s/q "%AppData%\迅雷X" 2>NUL +rd/s/q "%AppData%\迅雷11" 2>NUL +rd/s/q "%AppData%\thunder"2>NUL +rd/s/q "%AppData%\thunderx"2>NUL +rd/s/q "%AppData%\XLGameBox"2>NUL +rd/s/q "%AppData%\迅雷播放组件" 2>NUL +rd/s/q "%AppData%\Thunder Network"2>NUL +rd/s/q "%ProgramData%\USOShared"2>NUL +rd/s/q "%ProgramData%\USOPrivate"2>NUL +rd/s/q "%ProgramData%\Thunder Network"2>NUL +rd/s/q "%PUBLIC%\Documents\Thunder Network"2>NUL +rd/s/q "%CommonProgramW6432%\Thunder Network"2>NUL +del/q "%ProgramData%\APlayerCodecs3.exe" >NUL 2>NUL +rd/s/q "%CommonProgramFiles(x86)%\Thunder Network"2>NUL +rd/s/q "%UserProfile%\AppData\LocalLow\XunLei"2>NUL +rd/s/q "%UserProfile%\AppData\LocalLow\XunleiBHO"2>NUL +del/q "%UserProfile%\AppData\APlayerCodecs3.exe" >NUL 2>NUL +rd/s/q "%UserProfile%\AppData\LocalLow\Thunder Network"2>NUL +del/q "%AppData%\Microsoft\Windows\Libraries\迅雷下载.library-ms" >NUL 2>NUL + +::允许防火墙入站规则 +netsh advfirewall firewall add rule name="Thunder" dir=in action=allow program="%~dp0Program\Thunder.exe" >NUL 2>NUL +netsh advfirewall firewall add rule name="DownloadSDKServer" dir=in action=allow program="%~dp0Program\resources\bin\SDK\DownloadSDKServer.exe" >NUL 2>NUL + +::阻止后台P2P偷偷上传 +rd/s/q "%PUBLIC%\Thunder Network"2>NUL +md "%PUBLIC%\Thunder Network\cid_store.dat" 2>NUL +md "%PUBLIC%\Thunder Network\tp_common_info.dat" 2>NUL +md "%PUBLIC%\Thunder Network\emule_upload_list.dat" 2>NUL + +::迅雷所在路径检测键值 +IF NOT EXIST "%ProgramW6432%" ( +reg add "HKLM\SOFTWARE\Thunder Network\ThunderOem\thunder_backwnd" /f /v "dir" /d "%~dp0\" >NUL 2>NUL +reg add "HKLM\SOFTWARE\Thunder Network\ThunderOem\thunder_backwnd" /f /v "instdir" /d "%~dp0\" >NUL 2>NUL +reg add "HKLM\SOFTWARE\Thunder Network\ThunderOem\thunder_backwnd" /f /v "Path" /d "%~dp0Program\Thunder.exe" >NUL 2>NUL +) ELSE ( +reg add "HKLM\SOFTWARE\Wow6432Node\Thunder Network\ThunderOem\thunder_backwnd" /f /v "dir" /d "%~dp0\" >NUL 2>NUL +reg add "HKLM\SOFTWARE\Wow6432Node\Thunder Network\ThunderOem\thunder_backwnd" /f /v "instdir" /d "%~dp0\" >NUL 2>NUL +reg add "HKLM\SOFTWARE\Wow6432Node\Thunder Network\ThunderOem\thunder_backwnd" /f /v "Path" /d "%~dp0Program\Thunder.exe" >NUL 2>NUL +) + +::注册IE浏览器或基于IE内核程序关联组件 +regsvr32 /s "%~dp0BHO\ThunderAgent.dll" +regsvr32 /s "%~dp0BHO\ThunderAgent64.dll" +regsvr32 /s "%~dp0Program\np_tdieplat.dll" + +::Chrme, firefox扩展检测识别路径键值项 +reg delete "HKLM\SOFTWARE\Wow6432Node\Google\Chrome\NativeMessagingHosts\com.xunlei.thunder" /f >NUL 2>NUL +reg add "HKLM\SOFTWARE\Google\Chrome\NativeMessagingHosts\com.xunlei.thunder" /f /ve /d "%~dp0Program\com.xunlei.thunder.json" >NUL 2>NUL +IF NOT EXIST "%ProgramW6432%" ( +reg add "HKLM\SOFTWARE\MozillaPlugins\@xunlei.com/npxunlei;version=1.0.0.2" /f /v "path" /d "%~dp0Program\npxunlei.dll" >NUL 2>NUL +) ELSE ( +reg add "HKLM\SOFTWARE\Wow6432Node\MozillaPlugins\@xunlei.com/npxunlei;version=1.0.0.2" /f /v "path" /d "%~dp0Program\npxunlei.dll" >NUL 2>NUL +) + +::添加网页右键菜单下载项 +reg add "HKCU\SOFTWARE\Microsoft\Internet Explorer\MenuExt\使用迅雷下载" /f /ve /d "%~dp0BHO\geturl.htm" >NUL 2>NUL +reg add "HKCU\SOFTWARE\Microsoft\Internet Explorer\MenuExt\使用迅雷下载" /f /v "Contexts" /t REG_DWORD /d "0x00000022" >NUL 2>NUL +reg add "HKCU\SOFTWARE\Microsoft\Internet Explorer\MenuExt\使用迅雷下载全部链接" /f /ve /d "%~dp0BHO\getAllurl.htm" >NUL 2>NUL +reg add "HKCU\SOFTWARE\Microsoft\Internet Explorer\MenuExt\使用迅雷下载全部链接" /f /v "Contexts" /t REG_DWORD /d "0x000000f3" >NUL 2>NUL + +::关联相关的文件类型协议 +reg add "HKCR\ed2k" /f /v "URL Protocol" /d "" >NUL 2>NUL +reg add "HKCR\ed2k\Shell\Open\command" /f /ve /d "\"%~dp0Program\Thunder.exe\" \"%%1\" -StartType:ed2k" >NUL 2>NUL +reg add "HKCR\magnet" /f /v "URL Protocol" /d "" >NUL 2>NUL +reg add "HKCR\magnet\Shell\Open\command" /f /ve /d "\"%~dp0Program\Thunder.exe\" \"%%1\" -StartType:magnet" >NUL 2>NUL +reg add "HKCR\thunder" /f /v "URL Protocol" /d "" >NUL 2>NUL +reg add "HKCR\thunder\Shell\Open\command" /f /ve /d "\"%~dp0Program\Thunder.exe\" \"%%1\" -StartType:thunder" >NUL 2>NUL +reg add "HKCR\thunderx" /f /v "URL Protocol" /d "" >NUL 2>NUL +reg add "HKCR\thunderx\Shell\Open\command" /f /ve /d "\"%~dp0Program\Thunder.exe\" \"%%1\" -StartType:thunderx" >NUL 2>NUL + +reg add "HKCR\.torrent" /f /ve /d "Xunlei.Bittorrent.6" >NUL 2>NUL +reg add "HKCR\Xunlei.Bittorrent.6" /f /ve /d "BT种子文件" >NUL 2>NUL +reg add "HKCR\Xunlei.Bittorrent.6\DefaultIcon" /f /ve /d "%~dp0Program\TorrentFile.ico" >NUL 2>NUL +reg add "HKCR\Xunlei.Bittorrent.6\Shell\Open" /f /ve /d "使用迅雷下载该BT文件" >NUL 2>NUL +reg add "HKCR\Xunlei.Bittorrent.6\Shell\Open\command" /f /ve /d "\"%~dp0Program\Thunder.exe\" \"%%1\"" >NUL 2>NUL + +reg add "HKCR\.downlist" /f /ve /d "Xunlei.LSTFile.6" >NUL 2>NUL +reg add "HKCR\Xunlei.LSTFile.6" /f /ve /d "迅雷专有下载文件" >NUL 2>NUL +reg add "HKCR\Xunlei.LSTFile.6\DefaultIcon" /f /ve /d "%~dp0Program\XLDownloadList.ico" >NUL 2>NUL +reg add "HKCR\Xunlei.LSTFile.6\Shell\Open" /f /ve /d "使用迅雷下载该任务列表文件" >NUL 2>NUL +reg add "HKCR\Xunlei.LSTFile.6\Shell\Open\command" /f /ve /d "\"%~dp0Program\Thunder.exe\" \"%%1\"" >NUL 2>NUL + +reg add "HKCR\.td" /f /ve /d "Xunlei.TDFile.6" >NUL 2>NUL +reg add "HKCR\.xltd" /f /ve /d "Xunlei.TDFile.6" >NUL 2>NUL +reg add "HKCR\Xunlei.TDFile.6" /f /ve /d "迅雷临时数据文件" >NUL 2>NUL +reg add "HKCR\Xunlei.TDFile.6\DefaultIcon" /f /ve /d "%~dp0Program\XLTempFile.ico" >NUL 2>NUL +reg add "HKCR\Xunlei.TDFile.6\Shell\Open" /f /ve /d "使用迅雷下载未完成文件" >NUL 2>NUL +reg add "HKCR\Xunlei.TDFile.6\Shell\Open\command" /f /ve /d "\"%~dp0Program\Thunder.exe\" \"%%1\"" >NUL 2>NUL + +reg add "HKCR\.xlb" /f /ve /d "Xunlei.XLB.6" >NUL 2>NUL +reg add "HKCR\xlb" /f /v "URL Protocol" /d "" >NUL 2>NUL +reg add "HKCR\Xunlei.XLB.6" /f /ve /d "迅雷下载合集文件" >NUL 2>NUL +reg add "HKCR\Xunlei.XLB.6\DefaultIcon" /f /ve /d "%~dp0Program\DownloadCollection.ico" >NUL 2>NUL +reg add "HKCR\Xunlei.XLB.6\Shell\Open" /f /ve /d "使用迅雷查看该下载合集文件" >NUL 2>NUL +reg add "HKCR\Xunlei.XLB.6\Shell\Open\command" /f /ve /d "\"%~dp0Program\Thunder.exe\" \"%%1\"" >NUL 2>NUL +reg add "HKCR\xlb\Shell\Open\command" /f /ve /d "\"%~dp0Program\Thunder.exe\" \"%%1\" -StartType:xlb" >NUL 2>NUL + +reg add "HKCR\.thunderskin" /f /ve /d "Xunlei.ThunderSkin.6" >NUL 2>NUL +reg add "HKCR\Xunlei.ThunderSkin.6" /f /ve /d "迅雷X皮肤文件" >NUL 2>NUL +reg add "HKCR\Xunlei.ThunderSkin.6\DefaultIcon" /f /ve /d "%~dp0Program\thunderskin.ico" >NUL 2>NUL +reg add "HKCR\Xunlei.ThunderSkin.6\Shell\Open" /f /ve /d "为迅雷X应用该皮肤" >NUL 2>NUL +reg add "HKCR\Xunlei.ThunderSkin.6\Shell\Open\command" /f /ve /d "\"%~dp0Program\Thunder.exe\" \"%%1\"" >NUL 2>NUL + +ASSOC .=. >NUL 2>NUL + +ECHO.&ECHO 完成 &TIMEOUT /t 2 >NUL&EXIT diff --git a/scripts/thunderx/uninstall.bat b/scripts/thunderx/uninstall.bat new file mode 100644 index 00000000000..1be49b8a3be --- /dev/null +++ b/scripts/thunderx/uninstall.bat @@ -0,0 +1,298 @@ +@ECHO OFF&(PUSHD "%~DP0")&(REG QUERY "HKU\S-1-5-19">NUL 2>&1)||( +powershell -Command "Start-Process '%~sdpnx0' -Verb RunAs"&&EXIT) + +taskkill /f /im XMP.exe >NUL 2>NUL +taskkill /f /im XLLiveUD* >NUL 2>NUL +taskkill /f /im Thunder* /T >NUL 2>NUL +taskkill /f /im xlbrowsershell* >NUL 2>NUL +taskkill /f /im DownloadSDKServer* >NUL 2>NUL + +::卸载IE浏览器或IE内核程序关联组件 +regsvr32 /s /u BHO\ThunderAgent.dll +regsvr32 /s /u BHO\ThunderAgent64.dll +regsvr32 /s /u Program\np_tdieplat.dll +start /wait Program\Thunder.exe -unassociate:all -unregprotocol:all + +::删除防火墙入站规则 +netsh advfirewall firewall delete rule name="Thunder" dir=in program="%~dp0Program\Thunder.exe" >NUL 2>NUL +netsh advfirewall firewall delete rule name="DownloadSDKServer" dir=in program="%~dp0Program\resources\bin\SDK\DownloadSDKServer.exe" >NUL 2>NUL + +::清除系统后台残留文件 +rd/s/q "%TEMP%\Xmp"2>NUL +rd/s/q "%TEMP%\xlwfp"2>NUL +rd/s/q "%TEMP%\Xunlei"2>NUL +rd/s/q "%TEMP%\Thunder"2>NUL +rd/s/q "%TEMP%\XLLiveUD"2>NUL +rd/s/q "%TEMP%\XLNonIESvr"2>NUL +rd/s/q "%TEMP%\ThunderLiveUD"2>NUL +rd/s/q "%TEMP%\ThunderInstall"2>NUL +rd/s/q "%TEMP%\Thunder Network"2>NUL +rd/s/q "%AppData%\迅雷" 2>NUL +rd/s/q "%AppData%\迅雷X" 2>NUL +rd/s/q "%AppData%\迅雷11" 2>NUL +rd/s/q "%AppData%\thunder"2>NUL +rd/s/q "%AppData%\thunderx"2>NUL +rd/s/q "%AppData%\XLGameBox"2>NUL +rd/s/q "%AppData%\迅雷播放组件" 2>NUL +rd/s/q "%AppData%\Thunder Network"2>NUL +rd/s/q "%ProgramData%\USOShared"2>NUL +rd/s/q "%ProgramData%\USOPrivate"2>NUL +rd/s/q "%ProgramData%\Thunder Network"2>NUL +rd/s/q "%CommonProgramW6432%\Thunder Network" 2>NUL +rd/s/q "%CommonProgramFiles(x86)%\Thunder Network"2>NUL +rd/s/q "%UserProfile%\AppData\LocalLow\XunLei"2>NUL +rd/s/q "%UserProfile%\AppData\LocalLow\XunleiBHO"2>NUL +rd/s/q "%UserProfile%\AppData\LocalLow\Thunder Network"2>NUL +del /q "%UserProfile%\AppData\APlayerCodecs3.exe" >NUL 2>NUL +del /q "%ProgramData%\APlayerCodecs3.exe" >NUL 2>NUL +rd/s/q "%PUBLIC%\Thunder Network"2>NUL +rd/s/q "%PUBLIC%\Documents\Thunder Network"2>NUL + +::清除迅雷目录残留文件 +del "Thunder.lnk " >NUL 2>NUL +del "Program\stat.dat" >NUL 2>NUL +del "Program\detect_stat.dat" >NUL 2>NUL +del "Program\latest_thunder_stat.xml" >NUL 2>NUL +del "Program\resources\bin\TBC\xlbrowser.ini" >NUL 2>NUL +rd /s /q "Program\resources\bin\TBC\Data"2>NUL + +::清除桌面和开始菜单快捷方式 +del /q "%Public%\Desktop\迅雷.lnk" >NUL 2>NUL +del /q "%UserProfile%\Desktop\迅雷.lnk" >NUL 2>NUL +rd/s/q "%AppData%\Microsoft\Windows\Start Menu\Programs\迅雷软件"2>NUL +rd/s/q "%ProgramData%\Microsoft\Windows\Start Menu\Programs\迅雷软件"2>NUL +del /q "%AppData%\Microsoft\Windows\Libraries\迅雷下载.library-ms" >NUL 2>NUL + +::清除注册表相关残留键值 +reg delete "HKCU\Software\Thunder Network" /f >NUL 2>NUL +reg delete "HKLM\Software\Thunder Network" /f >NUL 2>NUL +reg delete "HKLM\Software\Wow6432Node\Thunder Network" /f >NUL 2>NUL + +reg delete "HKLM\SOFTWARE\Classes\.td" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xlb" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\.xlb" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\.xltd" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\ed2k" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\magnet" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\thunder" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\thunderx" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\.torrent" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\.downlist" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\.thunderskin" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\ThunderSkin.6" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Xunlei.XLB.6" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Xunlei.TDFile.6" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Xunlei.LSTFile.6" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Xunlei.Bittorrent.6" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Xunlei.ThunderSkin.6" /f >NUL 2>NUL + +reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\thunder" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\thunder" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\MozillaPlugins\@xunlei.com/npxunlei;version=1.0.0.2" /f >NUL 2>NUL +reg delete "HKLM\Software\MozillaPlugins\@xunlei.com/npxunlei;version=1.0.0.2" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\MozillaPlugins\@xunlei.com/npxunlei;version=1.0.0.2" /f >NUL 2>NUL +reg delete "HKLM\Software\Wow6432Node\MozillaPlugins\@xunlei.com/npxunlei;version=1.0.0.2" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Mozilla\NativeMessagingHosts\com.xunlei.thunder" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Mozilla\NativeMessagingHosts\com.xunlei.thunder" /f >NUL 2>NUL +reg delete "HKCU\Software\Google\Chrome\NativeMessagingHosts\com.xunlei.thunder" /f >NUL 2>NUL +reg delete "HKLM\Software\Google\Chrome\NativeMessagingHosts\com.xunlei.thunder" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\WOW6432Node\Google\Chrome\NativeMessagingHosts\com.xunlei.thunder" /f >NUL 2>NUL +reg delete "HKCU\Software\Microsoft\Internet Explorer\MenuExt\使用迅雷下载" /f >NUL 2>NUL +reg delete "HKCU\Software\Microsoft\Internet Explorer\MenuExt\使用迅雷下载全部链接" /f >NUL 2>NUL + +reg delete "HKLM\SOFTWARE\Classes\APlayer3.Player" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\APlayer3.Player.1" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\APlayerUI.Player" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\APlayerUI.Player.1" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\*\shellex\ContextMenuHandlers\AXmpLite" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\AppID\{06A28264-EF0A-48E5-AD42-1327E5328955}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\AppID\{99DC6162-65E4-476E-87CE-9E5944D323E2}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\AppID\{AD13FB62-BF1B-4434-9BC3-20678B5287DE}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\AppID\ShlExt.DLL" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\AppID\UserAgent.DLL" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\AppID\XunleiBHO64.DLL" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{002AE4F2-96AB-4dfa-AE2E-605217F8A84C}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{002AE4F2-96AB-4dfa-AE2E-605217F8A84C}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{004B0726-A010-4abf-8556-FCDB7F1FCA1E}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{0119CCC1-8EAC-43E9-AA7D-87F64B44AA4D}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{67486EAA-ED7F-4F84-82EB-26F23F57D690}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{889D2FEB-5411-4565-8998-1DD2C5261283}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\CLSID\{8F556DA3-987D-47b0-AA88-EB8D52FE1B9A}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{2C543E47-732B-4EDE-8AC9-C3D27C861FAA}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{559BAA6F-E3FE-4B0B-90D7-2C0BFA5145F1}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{7BD58878-F0AE-406B-B5CE-871C4E01B237}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Interface\{CF1FC792-7F5C-4DB0-A00A-D209F5FFBD16}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\MiniXmpShlExt.ContextMenuExt" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\MiniXmpShlExt.ContextMenuExt.1" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Thunder.MyComputerIcon" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Thunder.MyComputerIcon.1" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\TypeLib\{01560F06-CEE2-46FF-8997-308A366175E9}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\TypeLib\{1957CD06-E83F-477D-AD1A-5F6B8C30C561}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\TypeLib\{26D657AE-A466-4F44-AB1D-5CFFFADBED97}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\TypeLib\{32648605-550A-40FA-8F3B-90470FF9EE1F}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\TypeLib\{5E1356B8-3AD9-48AF-AA80-D76E5415E81B}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\TypeLib\{64A3A559-FFBB-49BA-A947-C6104804D644}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\TypeLib\{97830570-35FE-4195-83DE-30E79B718713}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\TypeLib\{A9757030-96F6-485E-A8AB-5B5137462472}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\UserAgent.Thunder59Agent" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\UserAgent.Thunder59Agent.1" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Wow6432Node\CLSID\{1E935CBE-2951-48FE-93C8-4B7F1E5AA14E}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Wow6432Node\CLSID\{22F1FF40-C53F-4360-A70E-F06540CB986B}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Wow6432Node\CLSID\{23A860E9-0C41-4E01-9206-D3FC0E413645}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Wow6432Node\CLSID\{485463B7-8FB2-4B3B-B29B-8B919B0EACCE}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Wow6432Node\CLSID\{485463B7-8FB2-4B3B-B29B-8B919B0EACCE}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Wow6432Node\CLSID\{6EE9CD3E-A386-4DAE-9737-A759DBF927AE}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Wow6432Node\CLSID\{A1E760B9-78EE-4570-909A-19ABF149F31E}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Wow6432Node\CLSID\{A63DEB30-9A77-492C-A380-3CA64A53C9EF}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Wow6432Node\CLSID\{A9332148-C691-4B9D-91FC-B9C461DBE9DD}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Wow6432Node\CLSID\{C46DFF24-22C0-4C8F-87D0-5CADE3C2ADD6}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Wow6432Node\CLSID\{DE05CF4A-7B0A-4775-B5E5-396244938679}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Wow6432Node\CLSID\{F19169FA-7EB8-45EB-8800-0D1F7C88F553}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Wow6432Node\Interface\{2C543E47-732B-4EDE-8AC9-C3D27C861FAA}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Wow6432Node\Interface\{559BAA6F-E3FE-4B0B-90D7-2C0BFA5145F1}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Wow6432Node\Interface\{7BD58878-F0AE-406B-B5CE-871C4E01B237}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Wow6432Node\Interface\{C46DFF24-22C0-4C8F-87D0-5CADE3C2ADD6}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Wow6432Node\Interface\{CF1FC792-7F5C-4DB0-A00A-D209F5FFBD16}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\Wow6432Node\Interface\{F19169FA-7EB8-45EB-8800-0D1F7C88F553}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.3g2" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.3gp" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.3gp2" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.3gpp" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.aac" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.ac3" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.acc" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.aiff" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.amr" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.amv" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.ape" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.asf" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.ass" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.au" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.avi" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.bik" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.cda" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.csf" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.divx" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.dts" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.dvd" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.evo" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.f4v" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.f5v" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.flac" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.flv" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.hflv" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.hlv" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.hmkv" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.hmp4" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.letv" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.m1a" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.m1v" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.m2a" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.m2p" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.m2ts" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.m2v" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.m4a" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.m4b" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.m4p" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.m4r" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.m4v" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.mid" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.midi" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.mk5" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.mka" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.mkv" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.mod" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.mov" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.mp2" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.mp2v" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.mp3" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.mp4" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.mp5" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.mpa" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.mpc" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.mpe" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.mpeg" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.mpeg1" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.mpeg2" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.mpeg4" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.mpg" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.mpv2" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.mts" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.oga" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.ogg" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.ogm" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.ogv" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.ogx" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.pmp" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.psb" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.pva" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.qt" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.ra" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.ram" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.rm" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.rmvb" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.rpm" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.rt" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.scm" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.smi" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.smil" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.srt" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.ssa" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.sub" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.sup" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.swf" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.tp" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.tpr" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.ts" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.tta" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.usf" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.vob" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.vp6" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.wav" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.wm" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.wma" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.wmp" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.wmv" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.wv" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\xmplite.xlmv" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Clients\Media\XMPLite" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Browser Helper Objects\{004B0726-A010-4ABF-8556-FCDB7F1FCA1E}" /f >NUL 2>NUL +reg delete "HKLM\SYSTEM\CurrentControlSet\Control\Class\{5DEB2780-5239-47C2-AEB7-B8BD9BEB3F80}" /f >NUL 2>NUL +reg delete "HKLM\SYSTEM\CurrentControlSet\Control\Class\{9FB5F2D4-203E-41D2-932F-6DE145F9756C}" /f >NUL 2>NUL +reg delete "HKLM\SYSTEM\CurrentControlSet\Services\XLGuard" /f >NUL 2>NUL +reg delete "HKLM\SYSTEM\CurrentControlSet\Services\XLServicePlatform" /f >NUL 2>NUL +reg delete "HKLM\SYSTEM\CurrentControlSet\Services\XLWFP" /f >NUL 2>NUL + +reg delete "HKCU\CLSID\{004B0726-A010-4abf-8556-FCDB7F1FCA1E}" /f >NUL 2>NUL +reg delete "HKCU\CLSID\{DE05CF4A-7B0A-4775-B5E5-396244938679}" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Classes\.thunderskin" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Classes\xlb" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Classes\.xlb" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Classes\.xltd" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Classes\bittorrent" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Classes\ed2k" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Classes\magnet" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Classes\thunder" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Classes\thunderx" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Classes\Xunlei.Bittorrent.6" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Classes\Xunlei.LSTFile.6" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Classes\Xunlei.TDFile.6" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Classes\Xunlei.ThunderSkin.6" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Classes\Xunlei.XLB.6" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Microsoft\Internet Explorer\MenuExt\&使用&迅雷离线下载" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Microsoft\Internet Explorer\MenuExt\&使用&迅雷下载" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Microsoft\Internet Explorer\MenuExt\&使用&迅雷下载全部链接" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.torrent\OpenWithProgids" /v "Xunlei.Bittorrent.6" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.xltd\OpenWithList" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.xltd\OpenWithProgids" /v "Xunlei.TDFile.6" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Mozilla\NativeMessagingHosts\com.xunlei.thunder" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\MozillaPlugins\@xunlei.com" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Thunder Network" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Ext\Stats\{002AE4F2-96AB-4dfa-AE2E-605217F8A84C}" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Ext\Stats\{485463B7-8FB2-4B3B-B29B-8B919B0EACCE}" /f >NUL 2>NUL + + +DEL /F/Q "%~dp0BHO\ThunderAgent*.dll" >NUL 2>NUL +IF EXIST "%~dp0BHO\ThunderAgent.dll" ren "%~dp0BHO\ThunderAgent.dll" "ThunderAgent.dll.%date:~8,2%%time:~0,2%%time:~3,2%%time:~6,2%.tmp" >NUL 2>NUL +IF EXIST "%~dp0BHO\ThunderAgent64.dll" ren "%~dp0BHO\ThunderAgent64.dll" "ThunderAgent64.dll.%date:~8,2%%time:~0,2%%time:~3,2%%time:~6,2%.tmp" >NUL 2>NUL +PUSHD .. & RD /S/Q "%~DP0" 2>NUL diff --git a/scripts/tim/install.bat b/scripts/tim/install.bat new file mode 100644 index 00000000000..bb670711ca3 --- /dev/null +++ b/scripts/tim/install.bat @@ -0,0 +1,74 @@ +@ECHO OFF&(PUSHD "%~DP0")&(REG QUERY "HKU\S-1-5-19">NUL 2>&1)||( +powershell -Command "Start-Process '%~sdpnx0' -Verb RunAs"&&EXIT) + +taskkill /f /im TIM.exe /t >NUL 2>NUL +taskkill /f /im TIMApp.exe >NUL 2>NUL +taskkill /f /im QQProtect.exe >NUL 2>NUL +taskkill /f /im TXPlatform.exe >NUL 2>NUL +taskkill /f /im QQExternal.exe >NUL 2>NUL +taskkill /f /im QQScLauncher.exe >NUL 2>NUL + +::注册腾讯软件运行库组件 +if exist Bin\TXSSO regsvr32 /s Bin\TXSSO\Bin\SSOLUIControl.dll +if exist Bin\TXSSO regsvr32 /s Bin\TXSSO\Bin\npSSOAxCtrlForPTLogin.dll + +::注册浏览器快速登陆组件 +if exist Bin\TXSSO\Npchrome regsvr32 /s Bin\TXSSO\Npchrome\npactivex.dll + +::注册群共享微云上传组件 +regsvr32 /s Plugin\Com.Tencent.NetDisk\Bin\QQDisk\Bin\TXFTNActiveX.dll + +::注册网页关联、表情包类型、下载组件等协议 +if exist Bin\Timwp.dll regsvr32 /s Bin\Timwp.dll +if exist Bin\AppCom.dll regsvr32 /s Bin\AppCom.dll +if exist Bin\TXPFProxy.dll regsvr32 /s Bin\TXPFProxy.dll +if exist Bin\KernelUtil.dll regsvr32 /s Bin\KernelUtil.dll +if exist Bin\TXPlatform.exe Bin\TXPlatform.exe /RegServer +if exist Bin\QQExternal.exe Bin\QQExternal.exe /SetupRegister +if exist Bin\DownloadProxyPS.dll regsvr32 /s Bin\DownloadProxyPS.dll + +::清除注册组件及相关残留数据 +rd/s/q "%AppData%\Tencent\TIM" 2>NUL +rd/s/q "%AppData%\Tencent\Logs" 2>NUL +rd/s/q "%AppData%\Tencent\TXSSO" 2>NUL +rd/s/q "%AppData%\Tencent\QTalk"2>NUL +rd/s/q "%AppData%\Tencent\libsdk"2>NUL +rd/s/q "%AppData%\Tencent\QQLite"2>NUL +rd/s/q "%AppData%\QQAppAssistant"2>NUL +rd/s/q "%AppData%\Tencent\Common"2>NUL +rd/s/q "%AppData%\Tencent\libsdk"2>NUL +rd/s/q "%AppData%\Tencent\beacon"2>NUL +rd/s/q "%AppData%\Tencent\SafeBas"2>NUL +rd/s/q "%AppData%\Tencent\QQPCMGR"2>NUL +rd/s/q "%APPDATA%\Tencent\QQDoctor"2>NUL +rd/s/q "%AppData%\Tencent\QQTempSys"2>NUL +rd/s/q "%AppData%\Tencent\Tencentdl" 2>NUL +rd/s/q "%AppData%\Tencent\DeskUpdate"2>NUL +rd/s/q "%AppData%\Tencent\QQDownload" 2>NUL +rd/s/q "%AppData%\Tencent\QQ\QQProtect" 2>NUL +rd/s/q "%AppData%\Tencent\AndroidAssist"2>NUL +rd/s/q "%AppData%\Tencent\AndroidServer"2>NUL +rd/s/q "%AppData%\Tencent\QQPhoneManager"2>NUL +rd/s/q "%AppData%\Tencent\QQ\commonf_inst" 2>NUL +rd/s/q "%AppData%\Tencent\QQPhoneAssistant"2>NUL +rd/s/q "%AppData%\Tencent\QQ\QQAntiPhishing" 2>NUL +del/f/q "%AppData%\Tencent\QQCall*.exe">NUL 2>NUL + +IF NOT EXIST "%ProgramW6432%" ( +::标记软件检测路径(安装视频留言和影音播放等组件下载需要) +reg add "HKLM\Software\Tencent\TIM" /f /v "Install" /d "%~dp0\" >NUL 2>NUL +::标记软件版本号(企业类型网页会话需要,CRM组件也需要保留) +reg add "HKLM\Software\Tencent\TIM" /f /v "version" /d "56.57.0.22051.0" >NUL 2>NUL +) else ( +reg add "HKLM\Software\Tencent\TIM" /f /v "Install" /d "%~dp0\" /reg:32 >NUL 2>NUL +reg add "HKLM\Software\Tencent\TIM" /f /v "version" /d "56.57.0.22051.0" /reg:32 >NUL 2>NUL +) + +::解决Windows 7或更高版在开启UAC用户账户控制情况下更改数据保存位置失败问题 +ver|findstr "\<6\.[0-9]\.[0-9][0-9]*\> \<10\.[0-9]\.[0-9][0-9]*\>" >NUL && ( +SET Data=^& echo +if not exist "%Public%\Documents\Tencent\QQ\UserDataInfo.ini" md "%Public%\Documents\Tencent\QQ" 2>NUL +if not exist "%Public%\Documents\Tencent\QQ\UserDataInfo.ini" echo.%Data%>>"%Public%\Documents\Tencent\QQ\UserDataInfo.ini" 2>NUL +) + +ECHO.&ECHO 完成 &TIMEOUT /t 3 >NUL&EXIT diff --git a/scripts/tim/uninstall.bat b/scripts/tim/uninstall.bat new file mode 100644 index 00000000000..893d049b2e2 --- /dev/null +++ b/scripts/tim/uninstall.bat @@ -0,0 +1,124 @@ +@ECHO OFF&(PUSHD "%~DP0")&(REG QUERY "HKU\S-1-5-19">NUL 2>&1)||( +powershell -Command "Start-Process '%~sdpnx0' -Verb RunAs"&&EXIT) + +taskkill /f /im TIM.exe /t >NUL 2>NUL +taskkill /f /im TIMApp.exe >NUL 2>NUL +taskkill /f /im QQProtect.exe >NUL 2>NUL +taskkill /f /im TXPlatform.exe >NUL 2>NUL +taskkill /f /im QQExternal.exe >NUL 2>NUL +taskkill /f /im GVStarter.exe >NUL 2>NUL +taskkill /f /im QQScLauncher.exe >NUL 2>NUL + +::卸载相关组件 +regsvr32 /s /u Bin\TXSSO\Bin\SSOLUIControl.dll +regsvr32 /s /u Bin\TXSSO\Npchrome\npactivex.dll +regsvr32 /s /u Bin\TXSSO\Bin\npSSOAxCtrlForPTLogin.dll +if exist Bin\Timwp.dll regsvr32 /s /u Bin\Timwp.dll +if exist Bin\AppCom.dll regsvr32 /s /u Bin\AppCom.dll +if exist Bin\CPHelper.dll regsvr32 /s /u Bin\CPHelper.dll +if exist Bin\TXPFProxy.dll regsvr32 /s /u Bin\TXPFProxy.dll +if exist Bin\KernelUtil.dll regsvr32 /s /u Bin\KernelUtil.dll +if exist Bin\TXPlatform.exe Bin\TXPlatform.exe /UnregServer +if exist Bin\DownloadProxyPS.dll regsvr32 /s /u Bin\DownloadProxyPS.dll +regsvr32 /s /u Plugin\Com.Tencent.NetDisk\Bin\QQDisk\Bin\TXFTNActiveX.dll + +if exist "%AppData%\Tencent\QQ\QQAntiPhishing\AccountProtect.dll" ( +regsvr32 /s /u "%AppData%\Tencent\QQ\QQAntiPhishing\AccountProtect.dll" +) +IF NOT EXIST "%ProgramW6432%" ( +if exist ShellExt\QQShellExt.dll regsvr32 /s /u ShellExt\QQShellExt.dll +if exist "%CommonProgramFiles%\Tencent\Npchrome\npactivex.dll" regsvr32 /s /u "%CommonProgramFiles%\Tencent\Npchrome\npactivex.dll" +rd /s/q "%CommonProgramFiles%\Tencent\QQDownload"2>NUL +rd /s/q "%CommonProgramFiles%\Tencent\Npchrome"2>NUL +rd /s/q "%CommonProgramFiles%\Tencent\TXFTN"2>NUL +) ELSE ( +if exist ShellExt\QQShellExt64.dll regsvr32 /s /u ShellExt\QQShellExt64.dll +if exist "%CommonProgramFiles(x86)%\Tencent\Npchrome\npactivex.dll" regsvr32 /s /u "%CommonProgramFiles(x86)%\Tencent\Npchrome\npactivex.dll" +rd /s/q "%CommonProgramFiles(x86)%\Tencent\QQDownload"2>NUL +rd /s/q "%CommonProgramFiles(x86)%\Tencent\Npchrome"2>NUL +rd /s/q "%CommonProgramFiles(x86)%\Tencent\TXFTN"2>NUL +) + +::清除卸载组件及相关残留数据 +rd/s/q "%AppData%\od" 2>NUL +del/q "bc_*.db" >NUL 2>NUL +del/q "Bin\bc_*.db" >NUL 2>NUL +del/q "Bin\beacon_*.log" >NUL 2>NUL +rd/s/q "%AppData%\Tencent\TIM" 2>NUL +rd/s/q "%AppData%\Tencent\Logs" 2>NUL +rd/s/q "%AppData%\Tencent\TXSSO" 2>NUL +rd/s/q "%AppData%\Tencent\QTalk"2>NUL +rd/s/q "%AppData%\Tencent\libsdk"2>NUL +rd/s/q "%AppData%\Tencent\QQLite"2>NUL +rd/s/q "%AppData%\QQAppAssistant"2>NUL +rd/s/q "%AppData%\Tencent\Common"2>NUL +rd/s/q "%AppData%\Tencent\SafeBas"2>NUL +rd/s/q "%AppData%\Tencent\QQPCMGR"2>NUL +rd/s/q "%APPDATA%\Tencent\QQDoctor"2>NUL +rd/s/q "%AppData%\Tencent\QQTempSys"2>NUL +rd/s/q "%AppData%\Tencent\Tencentdl"2>NUL +rd/s/q "%AppData%\Tencent\DeskUpdate"2>NUL +rd/s/q "%AppData%\Tencent\QQDownload"2>NUL +rd/s/q "%AppData%\Tencent\QQ\QQProtect"2>NUL +rd/s/q "%AppData%\Tencent\AndroidAssist"2>NUL +rd/s/q "%AppData%\Tencent\AndroidServer"2>NUL +rd/s/q "%AppData%\Tencent\QQPhoneManager"2>NUL +rd/s/q "%AppData%\Tencent\QQ\commonf_inst"2>NUL +rd/s/q "%AppData%\Tencent\QQPhoneAssistant"2>NUL +rd/s/q "%AppData%\Tencent\QQ\QQAntiPhishing"2>NUL +del/f/q "%AppData%\Tencent\QQCall*.exe">NUL 2>NUL +rd/s/q "%Public%\Documents\Tencent"2>NUL +rd/s/q "%ProgramData%\Tencent\OD"2>NUL + +::清除桌面和开始菜单快捷方式 +ver|findstr "5\.[0-9]\.[0-9][0-9]*" >NUL && ( +del/q "%UserProfile%\桌面\腾讯TIM.lnk" >NUL 2>NUL +del/q "%AllUsersProfile%\桌面\腾讯TIM.lnk" >NUL 2>NUL +rd/s/q "%UserProfile%\「开始」菜单\程序\腾讯软件\腾讯TIM"2>NUL +rd/s/q "%AllUsersProfile%\「开始」菜单\程序\腾讯软件\腾讯TIM"2>NUL ) +ver|findstr "\<6\.[0-9]\.[0-9][0-9]*\> \<10\.[0-9]\.[0-9][0-9]*\>" >NUL && ( +del/q "%Public%\Desktop\腾讯TIM.lnk" >NUL 2>NUL +del/q "%UserProfile%\Desktop\腾讯TIM.lnk" >NUL 2>NUL +rd/s/q "%AppData%\Microsoft\Windows\Start Menu\Programs\腾讯软件\腾讯TIM"2>NUL +rd/s/q "%ProgramData%\Microsoft\Windows\Start Menu\Programs\腾讯软件\腾讯TIM"2>NUL ) + +::清除系统程序卸载项 +reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\TIM" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\TIM" /f /reg:32 >NUL 2>NUL + +::清除相关注册表键值 +reg delete "HKCU\Software\Tencent\TIM" /f >NUL 2>NUL +reg delete "HKLM\Software\Tencent\TIM" /f >NUL 2>NUL +reg delete "HKCU\Software\Tencent\Plugin" /F >NUL 2>NUL +reg delete "HKCU\Software\Tencent\TodayDo" /F >NUL 2>NUL +reg delete "HKCU\Software\Tencent\QQProtect" /F>NUL 2>NUL +reg delete "HKCU\Software\Tencent\PlatForm_Type_List" /F >NUL 2>NUL +reg delete "HKCU\Software\Tencent\PLATFORM_CLSID_LIST" /F >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Classes\EMOTION.File" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Classes\THEMEX.Package" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Classes\EMOTION.Package" /f >NUL 2>NUL +reg delete "HKCU\Software\Tencent\AndroidAssistant" /F>NUL 2>NUL +reg delete "HKEY_USERS\.DEFAULT\Software\Tencent\QQProtect" /f >NUL 2>NUL +reg delete "HKLM\Software\Classes\Tencent" /F /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Tencent\PlatForm_Type_List" /F>NUL 2>NUL +reg delete "HKLM\SOFTWARE\Tencent\QQPhotoDrawEx" /F /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Tencent\BackupDownloader" /F /reg:32 >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Tencent\PlatForm_Type_List" /F /reg:32 >NUL 2>NUL +reg delete "HKEY_USERS\.DEFAULT\Software\Tencent\bugReport\QQProtect" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Tencent\bugReport\TIM" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Tencent\bugReport\QQUrlMgr" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Microsoft\Internet Explorer\Low Rights\ElevationPolicy\{BB32E0A4-AC96-4e85-8B8F-D7A90FDF715D}" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Microsoft\Internet Explorer\Low Rights\ElevationPolicy\{BB32E0A4-AC96-4e85-8B8F-D7A90FDF715D}" /f /reg:32 >NUL 2>NUL + + + IF EXIST ShellExt DEL /F/Q "ShellExt\*.*" >NUL 2>NUL + IF EXIST ShellExt\QQShellExt.dll ren ShellExt\QQShellExt.dll "QQShellExt.dll.%time:~0,2%%time:~3,2%%time:~6,2%.tmp" >NUL 2>NUL + IF EXIST ShellExt\QQShellExt64.dll ren ShellExt\QQShellExt64.dll "QQShellExt64.dll.%time:~0,2%%time:~3,2%%time:~6,2%.tmp" >NUL 2>NUL + IF EXIST "users" ( + FOR /F "delims=*" %%a IN ('dir /a/b *.*^|findstr /v /i "users$"') DO ( + RD /S/Q "%%a" >NUL 2>NUL & DEL /F/Q "%%a" >NUL 2>NUL) + ) ELSE ( + IF EXIST ShellExt DEL /F/Q "ShellExt\*.*" >NUL 2>NUL + IF EXIST ShellExt\QQShellExt.dll ren ShellExt\QQShellExt.dll "QQShellExt.dll.%time:~0,2%%time:~3,2%%time:~6,2%.tmp" >NUL 2>NUL + IF EXIST ShellExt\QQShellExt64.dll ren ShellExt\QQShellExt64.dll "QQShellExt64.dll.%time:~0,2%%time:~3,2%%time:~6,2%.tmp" >NUL 2>NUL + PUSHD .. & RD /S/Q "%~DP0" >NUL 2>NUL) diff --git a/scripts/uniextract2/disable-warning.ps1 b/scripts/uniextract2/disable-warning.ps1 new file mode 100644 index 00000000000..2e9ae9d6546 --- /dev/null +++ b/scripts/uniextract2/disable-warning.ps1 @@ -0,0 +1,6 @@ +# This is to disable the warning popup when the app/command is executed for the first time. +$cont = Get-Content "$dir\UniExtract.ini" +if ($cont -match 'warnexecute=1') { + $cont = $cont.Replace('warnexecute=1', 'warnexecute=0') + $cont | Set-Content "$dir\UniExtract.ini" +} \ No newline at end of file diff --git a/scripts/uniextract2_fixed/disable-warning.ps1 b/scripts/uniextract2_fixed/disable-warning.ps1 new file mode 100644 index 00000000000..2e9ae9d6546 --- /dev/null +++ b/scripts/uniextract2_fixed/disable-warning.ps1 @@ -0,0 +1,6 @@ +# This is to disable the warning popup when the app/command is executed for the first time. +$cont = Get-Content "$dir\UniExtract.ini" +if ($cont -match 'warnexecute=1') { + $cont = $cont.Replace('warnexecute=1', 'warnexecute=0') + $cont | Set-Content "$dir\UniExtract.ini" +} \ No newline at end of file diff --git a/scripts/uninstall_cudnn.ps1 b/scripts/uninstall_cudnn.ps1 new file mode 100644 index 00000000000..eb82c71bf7e --- /dev/null +++ b/scripts/uninstall_cudnn.ps1 @@ -0,0 +1,10 @@ +if (!$env:CUDA_PATH) { + Write-Error "Environment variable 'CUDA_PATH' not found." + return +} +$cudnnFiles = Get-ChildItem -LiteralPath $env:CUDA_PATH -File -Recurse | Where-Object { + $_.Name -like 'cudnn64.*.dll' -or + $_.Name -like 'cudnn.h' -or + $_.Name -like 'cudnn.lib' +} +sudo Remove-Item -LiteralPath $cudnnFiles -Force diff --git a/scripts/uninstall_keypirinha_plugin.ps1 b/scripts/uninstall_keypirinha_plugin.ps1 new file mode 100644 index 00000000000..d566c83f47d --- /dev/null +++ b/scripts/uninstall_keypirinha_plugin.ps1 @@ -0,0 +1,3 @@ +$packageName = '{0}.keypirinha-package' -f ($app -replace '^keypirinha-', '') +$packageDir = '{0}/../portable/Profile/Packages' -f (PSWinUtil\Find-Path -Name 'keypirinha.exe' -Program -Strict) +Remove-Item -LiteralPath ('{0}/{1}' -f $packageDir, $packageName) diff --git a/scripts/uninstall_youtube-dl-animelover1984.ps1 b/scripts/uninstall_youtube-dl-animelover1984.ps1 new file mode 100644 index 00000000000..bf92f02c48e --- /dev/null +++ b/scripts/uninstall_youtube-dl-animelover1984.ps1 @@ -0,0 +1,8 @@ +pip uninstall youtube-dl -y + +Get-Command -Name "pip.exe" | +Select-Object -ExpandProperty Source | +Split-Path -Parent | +Get-ChildItem -LiteralPath { $_ } -File | +Where-Object { $_.Name -in "youtube-dl-animelover1984.exe", "youtube-dl-animelover1984-script.py" } | +Remove-Item -LiteralPath { $_.FullName } diff --git a/scripts/versions.mjs b/scripts/versions.mjs new file mode 100644 index 00000000000..7d1226dd71b --- /dev/null +++ b/scripts/versions.mjs @@ -0,0 +1,85 @@ +export const stable = { + "v2": [ + "2.08", + "2.09", + "2.10", + "2.11", + "2.12", + "2.13", + "2.14", + "2.15", + "2.16", + "2.17", + "2.18", + "2.19", + "2.20", + "2.21", + "2.22", + "2.23", + "2.24", + "2.25", + "2.26", + "2.27", + "2.28", + "2.29", + "2.30", + "2.31", + "2.32", + "2.33", + "2.34", + "2.35", + "2.36", + "2.37", + "2.38", + "2.39", + "2.40", + "2.41", + "2.42", + "2.43", + "2.44", + "2.45", + "2.46", + "2.47", + "2.48", + "2.49", + "2.50", + "2.51" + ], + "v3": [ + "3.0", + "3.01", + "3.02", + "3.02.1", + "3.03", + "3.04", + "3.05", + "3.06", + "3.06.1", + "3.07", + "3.08" + ], + "unavailable": [ + "2.0", + "2.01", + "2.02", + "2.03", + "2.04", + "2.05", + "2.06", + "2.07" + ] +}; + +export const prerelease = { + "v3": [ + "3.0rc2", + "3.0rc1", + "3.0b3", + "3.0b2", + "3.0b1", + "3.0b0", + "3.0a2", + "3.0a1", + "3.0a0" + ] +}; \ No newline at end of file diff --git a/scripts/vscode-install-context-it.reg b/scripts/vscode-install-context-it.reg new file mode 100644 index 00000000000..97a003d1538 --- /dev/null +++ b/scripts/vscode-install-context-it.reg @@ -0,0 +1,19 @@ +Windows Registry Editor Version 5.00 + +[HKEY_CURRENT_USER\Software\Classes\*\shell\Apri con &Code] +@="Apri con &Code" +"Icon"="$code" +[HKEY_CURRENT_USER\Software\Classes\*\shell\Apri con &Code\command] +@="\"$code\" \"%1\"" + +[HKEY_CURRENT_USER\Software\Classes\Directory\shell\Apri con &Code] +@="Apri con &Code" +"Icon"="$code" +[HKEY_CURRENT_USER\Software\Classes\Directory\shell\Apri con &Code\command] +@="\"$code\" \"%1\"" + +[HKEY_CURRENT_USER\Software\Classes\Directory\Background\shell\Apri con &Code] +@="Apri con &Code" +"Icon"="$code" +[HKEY_CURRENT_USER\Software\Classes\Directory\Background\shell\Apri con &Code\command] +@="\"$code\" \"%V\"" diff --git a/scripts/vscode-uninstall-context-it.reg b/scripts/vscode-uninstall-context-it.reg new file mode 100644 index 00000000000..cd8191d01c2 --- /dev/null +++ b/scripts/vscode-uninstall-context-it.reg @@ -0,0 +1,8 @@ +Windows Registry Editor Version 5.00 + +[-HKEY_CURRENT_USER\Software\Classes\*\shell\Apri con &Code] +[-HKEY_CURRENT_USER\Software\Classes\*\shell\Apri con &Code\command] +[-HKEY_CURRENT_USER\Software\Classes\Directory\shell\Apri con &Code] +[-HKEY_CURRENT_USER\Software\Classes\Directory\shell\Apri con &Code\command] +[-HKEY_CURRENT_USER\Software\Classes\Directory\Background\shell\Apri con &Code] +[-HKEY_CURRENT_USER\Software\Classes\Directory\Background\shell\Apri con &Code\command] diff --git a/scripts/vulkan/install-vk-layers.ps1 b/scripts/vulkan/install-vk-layers.ps1 new file mode 100644 index 00000000000..46c957e26b1 --- /dev/null +++ b/scripts/vulkan/install-vk-layers.ps1 @@ -0,0 +1,15 @@ +if ($global -and (-not $is_admin)) { + Write-Host "ERROR write registries for global installation needs admin rights!" -ForegroundColor DarkRed + exit 1 +} + +$reg_root = if ($global) { [Microsoft.Win32.Registry]::LocalMachine } else { [Microsoft.Win32.Registry]::CurrentUser } +$vk_explicit_reg_path = 'SOFTWARE\Khronos\Vulkan\ExplicitLayers' +$vk_explicit_reg = $reg_root.CreateSubKey($vk_explicit_reg_path) + +$vk_layers = Get-ChildItem -Path $vulkan_bin -Filter '*.json' | ForEach-Object { $_.FullName } +foreach ($vk_layer in $vk_layers) { + $vk_explicit_reg.SetValue($vk_layer, 0, [Microsoft.Win32.RegistryValueKind]::DWord) +} + +$vk_explicit_reg.Close() diff --git a/scripts/weasel/install.ahk b/scripts/weasel/install.ahk new file mode 100644 index 00000000000..4443a24dd36 --- /dev/null +++ b/scripts/weasel/install.ahk @@ -0,0 +1,10 @@ +#NoEnv +#NoTrayIcon +#Warn ; Enable warnings to assist with detecting common errors. +SendMode Input ; Recommended for new scripts due to its superior speed and reliability. +SetTitleMatchMode, 1 ; A windows's title must start with the specified WinTitle to be a match. +SetControlDelay 0 +SetWorkingDir %A_ScriptDir% ; Ensures a consistent starting directory. + +Process,Wait,WeaselDeployer.exe +Process,Close,WeaselDeployer.exe diff --git a/scripts/wechat/uninstall.bat b/scripts/wechat/uninstall.bat new file mode 100644 index 00000000000..59f844ee9d1 --- /dev/null +++ b/scripts/wechat/uninstall.bat @@ -0,0 +1,27 @@ +@ECHO OFF&(PUSHD "%~DP0")&(REG QUERY "HKU\S-1-5-19">NUL 2>&1)||( +powershell -Command "Start-Process '%~sdpnx0' -Verb RunAs"&&EXIT) + +taskkill /f /im WeChat* /t >NUL 2>NUL +taskkill /f /im xwalk_service.exe >NUL 2>NUL + +rd/s/q "%Temp%\WeChatSetup"2>NUL +rd/s/q "%Temp%\WeChatUninst"2>NUL +rd/s/q "%AppData%\Tencent\WeChat"2>NUL + +ver|findstr "\<6\.[0-9]\.[0-9][0-9]*\> \<10\.[0-9]\.[0-9][0-9]*\>" >NUL&&( +del/q "%Public%\Desktop\微信.lnk" >NUL 2>NUL +del/q "%UserProfile%\Desktop\微信.lnk" >NUL 2>NUL +rd/s/q "%AppData%\Microsoft\Windows\Start Menu\Programs\腾讯软件\微信"2>NUL +rd/s/q "%ProgramData%\Microsoft\Windows\Start Menu\Programs\腾讯软件\微信"2>NUL +rd/s/q "%localappdata%\Tencent\BrowsingService"2>NUL +) +ver|findstr "5\.[0-9]\.[0-9][0-9]*" >NUL&&( +del/q "%UserProfile%\桌面\腾讯软件\微信.lnk" >NUL 2>NUL +del/q "%AllUsersProfile%\桌面\腾讯软件\微信.lnk" >NUL 2>NUL +rd/s/q "%UserProfile%\「开始」菜单\程序\腾讯软件\微信" 2>NUL +rd/s/q "%AllUsersProfile%\「开始」菜单\程序\腾讯软件\微信" 2>NUL +rd/s/q "%UserProfile%\Local Settings\Application Data\Tencent\BrowsingService"2>NUL +) +reg delete "HKCU\Software\Tencent\WeChat" /f>NUL 2>NUL +reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\WeChat" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\WeChat" /f /reg:32 >NUL 2>NUL diff --git a/scripts/winrar/Win11_DARK.kentaP.2.0_64x.theme.rar b/scripts/winrar/Win11_DARK.kentaP.2.0_64x.theme.rar new file mode 100644 index 00000000000..7c8d8ff325e Binary files /dev/null and b/scripts/winrar/Win11_DARK.kentaP.2.0_64x.theme.rar differ diff --git a/scripts/winrar/Win11_kentaP.2.0_64x.theme.rar b/scripts/winrar/Win11_kentaP.2.0_64x.theme.rar new file mode 100644 index 00000000000..e6cdf3cb126 Binary files /dev/null and b/scripts/winrar/Win11_kentaP.2.0_64x.theme.rar differ diff --git a/scripts/winrar/Windows_11_x64_.theme.rar b/scripts/winrar/Windows_11_x64_.theme.rar new file mode 100644 index 00000000000..8c102666526 Binary files /dev/null and b/scripts/winrar/Windows_11_x64_.theme.rar differ diff --git a/scripts/winrar/rarreg.key b/scripts/winrar/rarreg.key new file mode 100644 index 00000000000..bc1489afb91 --- /dev/null +++ b/scripts/winrar/rarreg.key @@ -0,0 +1,11 @@ +RAR registration data +State Grid Corporation Of China +50000 PC usage license +UID=5827a0bd1c43525d0a5d +64122122500a5d3d56f784f3a440ac3fb632d34e08bbaa37fc7712 +6acaeb8eb044810272e86042cb7c79b1da0eaf88c79f8a7c6dd77b +dba335e27a109997ac90fb0e10e4129e79f46c42b4ee1832fa5113 +7443fcc1124840d4dd36f3af84a5c915a760b18c6394f938168227 +fbf29edbc4b34ef85ee53fbfca71814a82afadf073876b4b033451 +b6292a7cc7975b3ff3cc73404abbf7c126787344169eeae4609f62 +c9ffbc159bf2640ad5d9b88f8fa9d9cbf2b7e5b022a21938465244 diff --git a/scripts/winrar/rarreg1.key b/scripts/winrar/rarreg1.key new file mode 100644 index 00000000000..35f9e8e95fe --- /dev/null +++ b/scripts/winrar/rarreg1.key @@ -0,0 +1,11 @@ +RAR registration data +Federal Agency for Education +1000000 PC usage license +UID=b621cca9a84bc5deffbf +6412612250ffbf533df6db2dfe8ccc3aae5362c06d54762105357d +5e3b1489e751c76bf6e0640001014be50a52303fed29664b074145 +7e567d04159ad8defc3fb6edf32831fd1966f72c21c0c53c02fbbb +2f91cfca671d9c482b11b8ac3281cb21378e85606494da349941fa +e9ee328f12dc73e90b6356b921fbfb8522d6562a6a4b97e8ef6c9f +fb866be1e3826b5aa126a4d2bfe9336ad63003fc0e71c307fc2c60 +64416495d4c55a0cc82d402110498da970812063934815d81470829275 diff --git a/scripts/winrar/winrar-custom-settings.reg b/scripts/winrar/winrar-custom-settings.reg new file mode 100644 index 00000000000..14741bbf987 --- /dev/null +++ b/scripts/winrar/winrar-custom-settings.reg @@ -0,0 +1,35 @@ +Windows Registry Editor Version 5.00 + +[HKEY_CURRENT_USER\Software\WinRAR\Extraction] +;取消“路径——路径中追加文件名” +"AppendName"=dword:00000000 +;勾选“路径——从解压路径移除多余的文件夹” +"RemoveRedundantFolder"=dword:00000001 + +[HKEY_CURRENT_USER\Software\WinRAR\General] +;取消“常规——保留压缩文件历史记录” +"History"=dword:00000000 +;取消“常规——在对话框中允许保存历史记录” +"DlgHistory"=dword:00000000 +;取消“常规——启用声音” +"Sound"=dword:00000000 +;取消“路径——启动时恢复到上次工作的文件夹” +"RestoreFolder"=dword:00000000 + +;勾选“综合——层叠右键关联菜单” +[HKEY_CURRENT_USER\Software\WinRAR\Setup] +"CascadedMenu"=dword:00000001 + +;取消右键关联菜单项目——“压缩到<压缩文件名称>并Email”和“压缩并E-mail” +[HKEY_CURRENT_USER\Software\WinRAR\Setup\MenuItems] +"EmailArc"=dword:00000000 +"EmailOpt"=dword:00000000 + +;解压带密码的文件时勾选“显示密码” +[HKEY_CURRENT_USER\Software\WinRAR\Interface] +"ShowPassword"=dword:00000001 + +;去除WinRAR右键新建菜单 +[-HKEY_CLASSES_ROOT\.rar\ShellNew] + +[-HKEY_CLASSES_ROOT\.zip\ShellNew] diff --git a/scripts/wmiexplorer/wmiexplorer.ps1 b/scripts/wmiexplorer/wmiexplorer.ps1 new file mode 100644 index 00000000000..c85a63403ad --- /dev/null +++ b/scripts/wmiexplorer/wmiexplorer.ps1 @@ -0,0 +1,1225 @@ +# +# WmiExplorer.ps1 +# +# A GUI WMI explorer and WMI Method Help generator +# +# /\/\o\/\/ 2006 +# www.ThePowerShellGuy.com +# +# load Forms NameSpace +[void][System.Reflection.Assembly]::LoadWithPartialName("System.windows.forms") + +#region BuildTheForm build in C# then translated to powershell +#region Make the form +$frmMain = new-object Windows.Forms.form +$frmMain.Size = new-object System.Drawing.Size @(800,600) +$frmMain.text = "/\/\o\/\/'s PowerShell WMI Explorer" +#endregion Make the form +#region Define Used Controls +$MainMenu = new-object System.Windows.Forms.MenuStrip +$statusStrip = new-object System.Windows.Forms.StatusStrip +$FileMenu = new-object System.Windows.Forms.ToolStripMenuItem +$ToolMenu = new-object System.Windows.Forms.ToolStripMenuItem('&tools') +$miQuery = new-object System.Windows.Forms.ToolStripMenuItem('&Query (run)') +$miSelectQuery = new-object System.Windows.Forms.ToolStripMenuItem('&SelectQuery') +$miSelectQuery.add_Click({$sq | out-propertyGrid;$wmiSearcher.Query = $sq}) +[void]$ToolMenu.DropDownItems.Add($miSelectQuery) +$miRelatedObjectQuery = new-object System.Windows.Forms.ToolStripMenuItem('&RelatedObjectQuery') +$miRelatedObjectQuery.add_Click({$roq | out-propertyGrid;$wmiSearcher.Query = $roq}) +[void]$ToolMenu.DropDownItems.Add($miRelatedObjectQuery) +$miRelationshipQuery = new-object System.Windows.Forms.ToolStripMenuItem('&RelationshipQuery') +$miRelationshipQuery.add_Click({$rq | out-propertyGrid ;$wmiSearcher.Query = $rq}) +[void]$ToolMenu.DropDownItems.Add($miRelationshipQuery) +$oq = new-object System.Management.ObjectQuery +$eq = new-object System.Management.EventQuery +$sq = new-object System.Management.SelectQuery +$roq = new-object System.Management.RelatedObjectQuery +$rq = new-object System.Management.RelationshipQuery +$wmiSearcher = [wmisearcher]'' +[void]$ToolMenu.DropDownItems.Add($miQuery) +$miQuery.add_Click({ + $wmiSearcher | out-propertyGrid + $moc = $wmiSearcher.get() + $DT = new-object System.Data.DataTable + $DT.TableName = $lblClass.text + $Col = new-object System.Data.DataColumn + $Col.ColumnName = "WmiPath" + $DT.Columns.Add($Col) + $i = 0 + $j = 0 ;$lblInstances.Text = $j; $lblInstances.Update() + $MOC | + ForEach-Object { + $j++ ;$lblInstances.Text = $j; $lblInstances.Update() + $MO = $_ + + # Make a DataRow + $DR = $DT.NewRow() + $Col = new-object System.Data.DataColumn + $DR.Item("WmiPath") = $mo.__PATH + $MO.psbase.properties | + ForEach-Object { + + $prop = $_ + + If ($i -eq 0) { + + # Only On First Row make The Headers + + $Col = new-object System.Data.DataColumn + $Col.ColumnName = $prop.Name.ToString() + + $prop.psbase.Qualifiers | + ForEach-Object { + If ($_.Name.ToLower() -eq "key") { + $Col.ColumnName = $Col.ColumnName + "*" + } + } + $DT.Columns.Add($Col) + } + + # fill dataRow + + if ($prop.value -eq $null) { + $DR.Item($prop.Name) = "[empty]" + } ElseIf ($prop.IsArray) { + $DR.Item($prop.Name) =[string]::Join($prop.value ,";") + } Else { + $DR.Item($prop.Name) = $prop.value + #Item is Key try again with * + trap{$DR.Item("$($prop.Name)*") = $prop.Value.tostring();continue} + } + } #end ForEach + # Add the row to the DataTable + + $DT.Rows.Add($DR) + $i += 1 + } + $DGInstances.DataSource = $DT.psObject.baseobject + $status.Text = "Retrieved $j Instances" + $status.BackColor = 'YellowGreen' + $statusstrip.Update() +})#$miQuery.add_Click + +$miQuit = new-object System.Windows.Forms.ToolStripMenuItem('&quit') +$miQuit.add_Click({$frmMain.close()}) +$SplitContainer1 = new-object System.Windows.Forms.SplitContainer +$splitContainer2 = new-object System.Windows.Forms.SplitContainer +$splitContainer3 = new-object System.Windows.Forms.SplitContainer +$grpComputer = new-object System.Windows.Forms.GroupBox +$grpNameSpaces = new-object System.Windows.Forms.GroupBox +$grpClasses = new-object System.Windows.Forms.GroupBox +$grpClass = new-object System.Windows.Forms.GroupBox +$grpInstances = new-object System.Windows.Forms.GroupBox +$grpStatus = new-object System.Windows.Forms.GroupBox +$txtComputer = new-object System.Windows.Forms.TextBox +$btnConnect = new-object System.Windows.Forms.Button +$btnInstances = new-object System.Windows.Forms.Button +$tvNameSpaces = new-object System.Windows.Forms.TreeView +$lvClasses = new-object System.Windows.Forms.ListView +$clbProperties = new-object System.Windows.Forms.CheckedListBox +$clbProperties.CheckOnClick = $true +$lbMethods = new-object System.Windows.Forms.ListBox +$label1 = new-object System.Windows.Forms.Label +$label2 = new-object System.Windows.Forms.Label +$lblServer = new-object System.Windows.Forms.Label +$lblPath = new-object System.Windows.Forms.Label +$lblNameSpace = new-object System.Windows.Forms.Label +$label6 = new-object System.Windows.Forms.Label +$lblClass = new-object System.Windows.Forms.Label +$label10 = new-object System.Windows.Forms.Label +$lblClasses = new-object System.Windows.Forms.Label +$label12 = new-object System.Windows.Forms.Label +$lblProperties = new-object System.Windows.Forms.Label +$label8 = new-object System.Windows.Forms.Label +$lblMethods = new-object System.Windows.Forms.Label +$label14 = new-object System.Windows.Forms.Label +$lblInstances = new-object System.Windows.Forms.Label +$label16 = new-object System.Windows.Forms.Label +$dgInstances = new-object System.Windows.Forms.DataGridView +$TabControl = new-object System.Windows.Forms.TabControl +$tabPage1 = new-object System.Windows.Forms.TabPage +$tabInstances = new-object System.Windows.Forms.TabPage +$rtbHelp = new-object System.Windows.Forms.RichTextBox +$tabMethods = new-object System.Windows.Forms.TabPage +$rtbMethods = new-object System.Windows.Forms.RichTextBox +#endregion Define Used Controls +#region Suspend the Layout +$splitContainer1.Panel1.SuspendLayout() +$splitContainer1.Panel2.SuspendLayout() +$splitContainer1.SuspendLayout() +$splitContainer2.Panel1.SuspendLayout() +$splitContainer2.Panel2.SuspendLayout() +$splitContainer2.SuspendLayout() +$grpComputer.SuspendLayout() +$grpNameSpaces.SuspendLayout() +$grpClasses.SuspendLayout() +$splitContainer3.Panel1.SuspendLayout() +$splitContainer3.Panel2.SuspendLayout() +$splitContainer3.SuspendLayout() +$grpClass.SuspendLayout() +$grpStatus.SuspendLayout() +$grpInstances.SuspendLayout() +$TabControl.SuspendLayout() +$tabPage1.SuspendLayout() +$tabInstances.SuspendLayout() +$FrmMain.SuspendLayout() +#endregion Suspend the Layout +#region Configure Controls +[void]$MainMenu.Items.Add($FileMenu) +[void]$MainMenu.Items.Add($ToolMenu) +$MainMenu.Location = new-object System.Drawing.Point(0, 0) +$MainMenu.Name = "MainMenu" +$MainMenu.Size = new-object System.Drawing.Size(1151, 24) +$MainMenu.TabIndex = 0 +$MainMenu.Text = "Main Menu" +# +# statusStrip1 +# +$statusStrip.Location = new-object System.Drawing.Point(0, 569) +$statusStrip.Name = "statusStrip" +$statusStrip.Size = new-object System.Drawing.Size(1151, 22); +$statusStrip.TabIndex = 1 +$statusStrip.Text = "statusStrip" +$splitContainer1.Dock = [System.Windows.Forms.DockStyle]::Fill +$splitContainer1.Location = new-object System.Drawing.Point(0, 24) +$splitContainer1.Name = "splitContainer1" +$splitContainer1.Panel1.Controls.Add($splitContainer2) +$splitContainer1.Panel2.Controls.Add($splitContainer3) +$splitContainer1.Size = new-object System.Drawing.Size(1151, 545) +$splitContainer1.SplitterDistance = 372 +$splitContainer1.TabIndex = 2 +$splitContainer2.BorderStyle = [System.Windows.Forms.BorderStyle]::Fixed3D +$splitContainer2.Dock = [System.Windows.Forms.DockStyle]::Fill +$splitContainer2.Location = new-object System.Drawing.Point(0, 0) +$splitContainer2.Name = "splitContainer2" +$splitContainer2.Orientation = [System.Windows.Forms.Orientation]::Horizontal +$splitContainer2.Panel1.BackColor = [System.Drawing.SystemColors]::Control +$splitContainer2.Panel1.Controls.Add($grpNameSpaces) +$splitContainer2.Panel1.Controls.Add($btnConnect) +$splitContainer2.Panel1.Controls.Add($grpComputer) +$splitContainer2.Panel2.Controls.Add($grpClasses) +$splitContainer2.Size = new-object System.Drawing.Size(372, 545) +$splitContainer2.SplitterDistance = 302 +$splitContainer2.TabIndex = 0 +# +# fileMenu +# +[void]$fileMenu.DropDownItems.Add($miQuit) +$fileMenu.Name = "fileMenu" +$fileMenu.Size = new-object System.Drawing.Size(35, 20) +$fileMenu.Text = "&File" +$grpComputer.Anchor = "top, left, right" +$grpComputer.Controls.Add($txtComputer) +$grpComputer.Location = new-object System.Drawing.Point(12, 3) +$grpComputer.Name = "grpComputer" +$grpComputer.Size = new-object System.Drawing.Size(340, 57) +$grpComputer.TabIndex = 0 +$grpComputer.TabStop = $false +$grpComputer.Text = "Computer" +$txtComputer.Anchor = "top, left, right" +$txtComputer.Location = new-object System.Drawing.Point(7, 20) +$txtComputer.Name = "txtComputer" +$txtComputer.Size = new-object System.Drawing.Size(244, 20) +$txtComputer.TabIndex = 0 +$txtComputer.Text = "." + +$btnConnect.Anchor = "top, right" +$btnConnect.Location = new-object System.Drawing.Point(269, 23); +$btnConnect.Name = "btnConnect" +$btnConnect.Size = new-object System.Drawing.Size(75, 23) +$btnConnect.TabIndex = 1 +$btnConnect.Text = "Connect" +$btnConnect.UseVisualStyleBackColor = $true +# +# grpNameSpaces +# +$grpNameSpaces.Anchor = "Bottom, top, left, right" +$grpNameSpaces.Controls.Add($tvNameSpaces) +$grpNameSpaces.Location = new-object System.Drawing.Point(12, 67) +$grpNameSpaces.Name = "grpNameSpaces" +$grpNameSpaces.Size = new-object System.Drawing.Size(340, 217) +$grpNameSpaces.TabIndex = 2 +$grpNameSpaces.TabStop = $false +$grpNameSpaces.Text = "NameSpaces" +# +# grpClasses +# +$grpClasses.Anchor = "Bottom, top, left, right" +$grpClasses.Controls.Add($lvClasses) +$grpClasses.Location = new-object System.Drawing.Point(12, 14) +$grpClasses.Name = "grpClasses" +$grpClasses.Size = new-object System.Drawing.Size(340, 206) +$grpClasses.TabIndex = 0 +$grpClasses.TabStop = $False +$grpClasses.Text = "Classes" +# +# tvNameSpaces +# +$tvNameSpaces.Anchor = "Bottom, top, left, right" +$tvNameSpaces.Location = new-object System.Drawing.Point(7, 19) +$tvNameSpaces.Name = "tvNameSpaces" +$tvNameSpaces.Size = new-object System.Drawing.Size(325, 184) +$tvNameSpaces.TabIndex = 0 +# +# tvClasses +# +$lvClasses.Anchor = "Bottom, top, left, right" +$lvClasses.Location = new-object System.Drawing.Point(7, 19) +$lvClasses.Name = "tvClasses" +$lvClasses.Size = new-object System.Drawing.Size(325, 172) +$lvClasses.TabIndex = 0 +$lvClasses.UseCompatibleStateImageBehavior = $False +$lvClasses.ShowItemToolTips = $true +$lvClasses.View = 'Details' +$colName = $lvClasses.Columns.add('Name') +$colname.Width = 160 +$colPath = $lvClasses.Columns.add('Description') +$colname.Width = 260 +$colPath = $lvClasses.Columns.add('Path') +$colname.Width = 260 +# +# splitContainer3 +# +$splitContainer3.BorderStyle = [System.Windows.Forms.BorderStyle]::Fixed3D +$splitContainer3.Dock = [System.Windows.Forms.DockStyle]::Fill +$splitContainer3.Location = new-object System.Drawing.Point(0, 0) +$splitContainer3.Name = "splitContainer3" +$splitContainer3.Orientation = [System.Windows.Forms.Orientation]::Horizontal +# +# splitContainer3.Panel1 +# +$splitContainer3.Panel1.Controls.Add($grpStatus) +$splitContainer3.Panel1.Controls.Add($grpClass) +# +# splitContainer3.Panel2 +# +$splitContainer3.Panel2.Controls.Add($TabControl) +$splitContainer3.Size = new-object System.Drawing.Size(775, 545) +$splitContainer3.SplitterDistance = 303 +$splitContainer3.TabIndex = 0 +# +# grpClass +# +$grpClass.Anchor = "Bottom, top, left, right" +$grpClass.Controls.Add($lblInstances) +$grpClass.Controls.Add($label16) +$grpClass.Controls.Add($lblMethods) +$grpClass.Controls.Add($label14) +$grpClass.Controls.Add($lblProperties) +$grpClass.Controls.Add($label8) +$grpClass.Controls.Add($lblClass) +$grpClass.Controls.Add($label10) +$grpClass.Controls.Add($lbMethods) +$grpClass.Controls.Add($clbProperties) +$grpClass.Controls.Add($btnInstances) +$grpClass.Location = new-object System.Drawing.Point(17, 86) +$grpClass.Name = "grpClass" +$grpClass.Size = new-object System.Drawing.Size(744, 198) +$grpClass.TabIndex = 0 +$grpClass.TabStop = $False +$grpClass.Text = "Class" +# +# btnInstances +# +$btnInstances.Anchor = "Bottom, Left" +$btnInstances.Location = new-object System.Drawing.Point(6, 169); +$btnInstances.Name = "btnInstances"; +$btnInstances.Size = new-object System.Drawing.Size(96, 23); +$btnInstances.TabIndex = 0; +$btnInstances.Text = "Get Instances"; +$btnInstances.UseVisualStyleBackColor = $true +# +# grpStatus +# +$grpStatus.Anchor = "Top,Left,Right" +$grpStatus.Controls.Add($lblClasses) +$grpStatus.Controls.Add($label12) +$grpStatus.Controls.Add($lblNameSpace) +$grpStatus.Controls.Add($label6) +$grpStatus.Controls.Add($lblPath) +$grpStatus.Controls.Add($lblServer) +$grpStatus.Controls.Add($label2) +$grpStatus.Controls.Add($label1) +$grpStatus.Location = new-object System.Drawing.Point(17, 3) +$grpStatus.Name = "grpStatus" +$grpStatus.Size = new-object System.Drawing.Size(744, 77) +$grpStatus.TabIndex = 1 +$grpStatus.TabStop = $False +$grpStatus.Text = "Status" +# +# label1 +# +$label1.AutoSize = $true +$label1.Font = new-object System.Drawing.Font("Microsoft Sans Serif",9.75 ,[System.Drawing.FontStyle]::Bold) +$label1.Location = new-object System.Drawing.Point(7, 20) +$label1.Name = "label1" +$label1.Size = new-object System.Drawing.Size(62, 16) +$label1.TabIndex = 0 +$label1.Text = "Server :" +# +# label2 +# +$label2.AutoSize = $true +$label2.Font = new-object System.Drawing.Font("Microsoft Sans Serif",9.75 ,[System.Drawing.FontStyle]::Bold) +$label2.Location = new-object System.Drawing.Point(7, 41) +$label2.Name = "label2" +$label2.Size = new-object System.Drawing.Size(51, 16) +$label2.TabIndex = 1 +$label2.Text = "Path :" +# +# lblServer +# +$lblServer.BorderStyle = [System.Windows.Forms.BorderStyle]::Fixed3D +$lblServer.Font = new-object System.Drawing.Font("Microsoft Sans Serif",9.75 ,[System.Drawing.FontStyle]::Bold) +$lblServer.Location = new-object System.Drawing.Point(75, 20) +$lblServer.Name = "lblServer" +$lblServer.Size = new-object System.Drawing.Size(144, 20) +$lblServer.TabIndex = 2 +# +# lblPath +# +$lblPath.BorderStyle = [System.Windows.Forms.BorderStyle]::Fixed3D +$lblPath.Font = new-object System.Drawing.Font("Microsoft Sans Serif",9.75 ,[System.Drawing.FontStyle]::Bold) +$lblPath.Location = new-object System.Drawing.Point(75, 40) +$lblPath.Name = "lblPath" +$lblPath.Size = new-object System.Drawing.Size(567, 20) +$lblPath.TabIndex = 3 +# +# lblNameSpace +# +$lblNameSpace.BorderStyle = [System.Windows.Forms.BorderStyle]::Fixed3D +$lblNameSpace.Font = new-object System.Drawing.Font("Microsoft Sans Serif",9.75 ,[System.Drawing.FontStyle]::Bold) +$lblNameSpace.Location = new-object System.Drawing.Point(337, 20) +$lblNameSpace.Name = "lblNameSpace" +$lblNameSpace.Size = new-object System.Drawing.Size(144, 20) +$lblNameSpace.TabIndex = 5 +# +# label6 +# +$label6.AutoSize = $true +$label6.Font = new-object System.Drawing.Font("Microsoft Sans Serif",9.75 ,[System.Drawing.FontStyle]::Bold) +$label6.Location = new-object System.Drawing.Point(229, 20) +$label6.Name = "label6" +$label6.Size = new-object System.Drawing.Size(102, 16) +$label6.TabIndex = 4 +$label6.Text = "NameSpace :" +# +# lblClass +# +$lblClass.BorderStyle = [System.Windows.Forms.BorderStyle]::Fixed3D +$lblClass.Font = new-object System.Drawing.Font("Microsoft Sans Serif",9.75 ,[System.Drawing.FontStyle]::Bold) +$lblClass.Location = new-object System.Drawing.Point(110, 26) +$lblClass.Name = "lblClass" +$lblClass.Size = new-object System.Drawing.Size(159, 20) +$lblClass.TabIndex = 11 +# +# label10 +# +$label10.AutoSize = $true +$label10.Font = new-object System.Drawing.Font("Microsoft Sans Serif",9.75 ,[System.Drawing.FontStyle]::Bold) +$label10.Location = new-object System.Drawing.Point(6, 26) +$label10.Name = "label10" +$label10.Size = new-object System.Drawing.Size(55, 16) +$label10.TabIndex = 10 +$label10.Text = "Class :" +# +# lblClasses +# +$lblClasses.BorderStyle = [System.Windows.Forms.BorderStyle]::Fixed3D +$lblClasses.Font = new-object System.Drawing.Font("Microsoft Sans Serif",9.75 ,[System.Drawing.FontStyle]::Bold) +$lblClasses.Location = new-object System.Drawing.Point(595, 21) +$lblClasses.Name = "lblClasses" +$lblClasses.Size = new-object System.Drawing.Size(47, 20) +$lblClasses.TabIndex = 9 +# +# label12 +# +$label12.AutoSize = $true +$label12.Font = new-object System.Drawing.Font("Microsoft Sans Serif",9.75 ,[System.Drawing.FontStyle]::Bold) +$label12.Location = new-object System.Drawing.Point(487, 21) +$label12.Name = "label12" +$label12.Size = new-object System.Drawing.Size(76, 16) +$label12.TabIndex = 8 +$label12.Text = "Classes :" +# +# clbProperties +# +$clbProperties.Anchor = "Bottom, top,left" +$clbProperties.FormattingEnabled = $true +$clbProperties.Location = new-object System.Drawing.Point(510, 27) +$clbProperties.Name = "clbProperties" +$clbProperties.Size = new-object System.Drawing.Size(220, 160) +$clbProperties.TabIndex = 1 +# +# lbMethods +# +$lbMethods.Anchor = "Bottom, top, Left" +$lbMethods.FormattingEnabled = $true +$lbMethods.Location = new-object System.Drawing.Point(280, 27) +$lbMethods.Name = "lbMethods" +$lbMethods.Size = new-object System.Drawing.Size(220, 160) +$lbMethods.TabIndex = 2 +# +# lblProperties +# +$lblProperties.BorderStyle = [System.Windows.Forms.BorderStyle]::Fixed3D +$lblProperties.Font = new-object System.Drawing.Font("Microsoft Sans Serif",9.75 ,[System.Drawing.FontStyle]::Bold) +$lblProperties.Location = new-object System.Drawing.Point(110, 46) +$lblProperties.Name = "lblProperties" +$lblProperties.Size = new-object System.Drawing.Size(119, 20) +$lblProperties.TabIndex = 13 +# +# label8 +# +$label8.AutoSize = $true +$label8.Font = new-object System.Drawing.Font("Microsoft Sans Serif",9.75 ,[System.Drawing.FontStyle]::Bold) +$label8.Location = new-object System.Drawing.Point(6, 46) +$label8.Name = "label8" +$label8.Size = new-object System.Drawing.Size(88, 16) +$label8.TabIndex = 12 +$label8.Text = "Properties :" +# +# lblMethods +# +$lblMethods.BorderStyle = [System.Windows.Forms.BorderStyle]::Fixed3D +$lblMethods.Font = new-object System.Drawing.Font("Microsoft Sans Serif",9.75 ,[System.Drawing.FontStyle]::Bold) +$lblMethods.Location = new-object System.Drawing.Point(110, 66) +$lblMethods.Name = "lblMethods" +$lblMethods.Size = new-object System.Drawing.Size(119, 20) +$lblMethods.TabIndex = 15 +# +# label14 +# +$label14.AutoSize = $true +$label14.Font = new-object System.Drawing.Font("Microsoft Sans Serif",9.75 ,[System.Drawing.FontStyle]::Bold) +$label14.Location = new-object System.Drawing.Point(6, 66) +$label14.Name = "label14" +$label14.Size = new-object System.Drawing.Size(79, 16) +$label14.TabIndex = 14 +$label14.Text = "Methods :" +# +# lblInstances +# +$lblInstances.BorderStyle = [System.Windows.Forms.BorderStyle]::Fixed3D +$lblInstances.Font = new-object System.Drawing.Font("Microsoft Sans Serif",9.75 ,[System.Drawing.FontStyle]::Bold) +$lblInstances.Location = new-object System.Drawing.Point(110, 86) +$lblInstances.Name = "lblInstances" +$lblInstances.Size = new-object System.Drawing.Size(119, 20) +$lblInstances.TabIndex = 17 +# +# label16 +# +$label16.AutoSize = $true +$label16.Font = new-object System.Drawing.Font("Microsoft Sans Serif",9.75 ,[System.Drawing.FontStyle]::Bold) +$label16.Location = new-object System.Drawing.Point(6, 86) +$label16.Name = "label16" +$label16.Size = new-object System.Drawing.Size(82, 16) +$label16.TabIndex = 16 +$label16.Text = "Instances :" +# +# grpInstances +# +$grpInstances.Anchor = "Bottom, top, left, right" +$grpInstances.Controls.Add($dgInstances) +$grpInstances.Location = new-object System.Drawing.Point(17, 17) +$grpInstances.Name = "grpInstances" +$grpInstances.Size = new-object System.Drawing.Size(744, 202) +$grpInstances.TabIndex = 0 +$grpInstances.TabStop = $False +$grpInstances.Text = "Instances" +# +# dgInstances +# +$dgInstances.Anchor = "Bottom, top, left, right" +$dgInstances.ColumnHeadersHeightSizeMode = [System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode]::AutoSize +$dgInstances.Location = new-object System.Drawing.Point(10, 19) +$dgInstances.Name = "dgInstances" +$dgInstances.Size = new-object System.Drawing.Size(728, 167) +$dgInstances.TabIndex = 0 +$dginstances.ReadOnly = $true +# TabControl +# +$TabControl.Controls.Add($tabPage1) +$TabControl.Controls.Add($tabInstances) +$TabControl.Controls.Add($tabMethods) +$TabControl.Dock = [System.Windows.Forms.DockStyle]::Fill +$TabControl.Location = new-object System.Drawing.Point(0, 0) +$TabControl.Name = "TabControl" +$TabControl.SelectedIndex = 0 +$TabControl.Size = new-object System.Drawing.Size(771, 234) +$TabControl.TabIndex = 0 +# +# tabPage1 +# +$tabPage1.Controls.Add($rtbHelp) +$tabPage1.Location = new-object System.Drawing.Point(4, 22) +$tabPage1.Name = "tabPage1" +$tabPage1.Padding = new-object System.Windows.Forms.Padding(3) +$tabPage1.Size = new-object System.Drawing.Size(763, 208) +$tabPage1.TabIndex = 0 +$tabPage1.Text = "Help" +$tabPage1.UseVisualStyleBackColor = $true +# +# tabInstances +# +$tabInstances.Controls.Add($grpInstances) +$tabInstances.Location = new-object System.Drawing.Point(4, 22) +$tabInstances.Name = "tabInstances" +$tabInstances.Padding = new-object System.Windows.Forms.Padding(3) +$tabInstances.Size = new-object System.Drawing.Size(763, 208) +$tabInstances.TabIndex = 1 +$tabInstances.Text = "Instances" +$tabInstances.UseVisualStyleBackColor = $true +# +# richTextBox1 +# +$rtbHelp.Dock = [System.Windows.Forms.DockStyle]::Fill +$rtbHelp.Location = new-object System.Drawing.Point(3, 3) +$rtbHelp.Name = "richTextBox1" +$rtbHelp.Size = new-object System.Drawing.Size(757, 202) +$rtbHelp.TabIndex = 0 +$rtbHelp.Text = "" +# +# tabMethods +# +$tabMethods.Location = new-object System.Drawing.Point(4, 22) +$tabMethods.Name = "tabMethods" +$tabMethods.Padding = new-object System.Windows.Forms.Padding(3) +$tabMethods.Size = new-object System.Drawing.Size(763, 208) +$tabMethods.TabIndex = 2 +$tabMethods.Text = "Methods" +$tabMethods.UseVisualStyleBackColor = $true + + $rtbMethods.Dock = [System.Windows.Forms.DockStyle]::Fill + $rtbMethods.Font = new-object System.Drawing.Font("Lucida Console",8 ) + $rtbMethods.DetectUrls = $false + $tabMethods.controls.add($rtbMethods) + +#endregion Configure Controls +# Configure Main Form +#region frmMain + +# +$frmMain.AutoScaleDimensions = new-object System.Drawing.SizeF(6, 13) +$frmMain.AutoScaleMode = [System.Windows.Forms.AutoScaleMode]::Font +$frmMain.ClientSize = new-object System.Drawing.Size(1151, 591) +$frmMain.Controls.Add($splitContainer1) +$frmMain.Controls.Add($statusStrip) +$frmMain.Controls.Add($MainMenu) +$frmMain.MainMenuStrip = $mainMenu +$FrmMain.Name = "frmMain" +$FrmMain.Text = "/\/\o\/\/ PowerShell WMI Browser" +$mainMenu.ResumeLayout($false) +$mainMenu.PerformLayout() +$MainMenu.ResumeLayout($false) +$MainMenu.PerformLayout() +$splitContainer1.Panel1.ResumeLayout($false) +$splitContainer1.Panel2.ResumeLayout($false) +$splitContainer1.ResumeLayout($false) +$splitContainer2.Panel1.ResumeLayout($false) +$splitContainer2.Panel2.ResumeLayout($false) +$splitContainer2.ResumeLayout($false) +$grpComputer.ResumeLayout($false) +$grpComputer.PerformLayout() +$grpNameSpaces.ResumeLayout($false) +$grpClasses.ResumeLayout($false) +$splitContainer3.Panel1.ResumeLayout($false) +$splitContainer3.Panel2.ResumeLayout($false) +$splitContainer3.ResumeLayout($false) +$grpClass.ResumeLayout($false) +$grpClass.PerformLayout() +$grpStatus.ResumeLayout($false) +$grpStatus.PerformLayout() +$grpInstances.ResumeLayout($false) +$TabControl.ResumeLayout($false) +$tabPage1.ResumeLayout($false) +$tabInstances.ResumeLayout($false) +$frmMain.ResumeLayout($false) +$FrmMain.PerformLayout() +$status = new-object System.Windows.Forms.ToolStripStatusLabel +$status.BorderStyle = 'SunkenInner' +$status.BorderSides = 'All' +$status.Text = "Not Connected" +[void]$statusStrip.Items.add($status) +$slMessage = new-object System.Windows.Forms.ToolStripStatusLabel +$slMessage.BorderStyle = 'SunkenInner' +$slMessage.BorderSides = 'All' +$slMessage.Text = "" +[void]$statusStrip.Items.add($slMessage) +#endregion frmMain +#endregion +#region Helper Functions +Function out-PropertyGrid { + Param ($Object,[switch]$noBase,[Switch]$array) + $PsObject = $null + if ($object) { + $PsObject = $object + }Else{ + if ($Array.IsPresent) { + $PsObject = @() + $input |ForEach-Object {$PsObject += $_} + }Else{ + $input |ForEach-Object {$PsObject = $_} + } + } + if ($PsObject){ + $form = new-object Windows.Forms.Form + $form.Size = new-object Drawing.Size @(600,600) + $PG = new-object Windows.Forms.PropertyGrid + $PG.Dock = 'Fill' + $form.text = "$psObject" + if ($noBase.IsPresent) {"no"; + $PG.selectedobject = $psObject + }Else{ + $PG.selectedobject = $psObject.PsObject.baseobject + } + $form.Controls.Add($PG) + $Form.Add_Shown({$form.Activate()}) + $form.showdialog() + } +} #Function out-PropertyGrid +Function Update-Status { + $script:computer = $Script:NameSpaces.__SERVER + $txtComputer.Text = $script:computer + $lblPath.Text = $Script:NameSpaces.__PATH + $lblProperties.Text = $Script:NameSpaces.__PROPERTY_COUNT + $lblClass.Text = $Script:NameSpaces.__RELPATH + $lblServer.Text = $script:Computer + $lblnamespace.Text = $Script:NameSpaces.__NAMESPACE +} # Function Update-Status +Function Set-StatusBar ([Drawing.Color]$Color,$Text) { + $status.BackColor = $color + $status.Text = $text + $statusstrip.Update() +} +#endregion Helper Functions +#################### Main ############################### +#region Global Variables +$FontBold = new-object System.Drawing.Font("Microsoft Sans Serif",8,[Drawing.FontStyle]'Bold' ) +$fontNormal = new-object System.Drawing.Font("Microsoft Sans Serif",8,[Drawing.FontStyle]'Regular') +$fontCode = new-object System.Drawing.Font("Lucida Console",8 ) +# Create Script Variables for WMI Connection +$Script:ConnectionOptions = new-object System.Management.ConnectionOptions +$script:WmiConnection = new-object system.management.ManagementScope +$script:WmiClass = [wmiClass]'' +# NamespaceCaching , Make HashTable to store Treeview Items +$script:nsc = @{} +# Make DataSet for secondary Cache +$Script:dsCache = new-object data.dataset +if (-not ${Global:WmiExplorer.dtClasses}){ + ${Global:WmiExplorer.dtClasses} = new-object data.datatable + [VOID](${Global:WmiExplorer.dtClasses}.Columns.add('Path',[string])) + [VOID](${Global:WmiExplorer.dtClasses}.Columns.add('Namespace',[string])) + [VOID](${Global:WmiExplorer.dtClasses}.Columns.add('name',[string])) + [VOID](${Global:WmiExplorer.dtClasses}.Columns.add('Description',[string])) + ${Global:WmiExplorer.dtClasses}.tablename = 'Classes' +} +#endregion +#region Control Handlers +# Add Delegate Scripts to finetune the WMI Connection objects to the events of the controls +$slMessage.DoubleClickEnabled = $true +$slMessage.add_DoubleClick({$error[0] | out-PropertyGrid}) +$lblNameSpace.add_DoubleClick({$script:WmiConnection | out-PropertyGrid}) +$lblserver.add_DoubleClick({$Script:ConnectionOptions | out-PropertyGrid}) +$lblClass.add_DoubleClick({$script:WmiClass | out-PropertyGrid}) + +$btnConnect.add_click({ConnectToComputer}) +$TVNameSpaces.add_DoubleClick({GetClassesFromNameSpace}) +$lvClasses.Add_DoubleClick({GetWmiClass}) +$btnInstances.add_Click({GetWmiInstances}) +$dgInstances.add_DoubleClick({OutputWmiInstance}) +$lbMethods.Add_DoubleClick({GetWmiMethod}) +$clbProperties.add_Click({ + trap{Continue} + $DGInstances.Columns.Item(($this.SelectedItem)).visible = -not $clbProperties.GetItemChecked($this.SelectedIndex) +}) +$TVNameSpaces.add_AfterSelect({ + if ($this.SelectedNode.name -ne $Computer){ + $lblPath.Text = "$($script:WmiConnection.path.path.replace('\root',''))\$($this.SelectedNode.Text)" + } + + $lblProperties.Text = $Script:NameSpaces.__PROPERTY_COUNT + $lblServer.Text = $Script:NameSpaces.__SERVER + $lblnamespace.Text = $this.SelectedNode.Text + if ($this.SelectedNode.tag -eq "NotEnumerated") { + (new-object system.management.managementClass( + "$($script:WmiConnection.path.path.replace('\root',''))\$($this.SelectedNode.Text):__NAMESPACE") + ).PSbase.getInstances() | Sort-Object $_.name | + ForEach-Object { + $TN = new-object System.Windows.Forms.TreeNode + $TN.Name = $_.name + $TN.Text = ("{0}\{1}" -f $_.__NameSpace,$_.name) + $TN.tag = "NotEnumerated" + $this.SelectedNode.Nodes.Add($TN) + } + + # Set tag to show this node is already enumerated + $this.SelectedNode.tag = "Enumerated" + } + $mp = ("{0}\{1}" -f $script:WmiConnection.path.path.replace('\root','') , $this.SelectedNode.text) + $lvClasses.Items.Clear() + if($Script:nsc.Item("$mp")){ # in Namespace cache + $lvClasses.BeginUpdate() + $lvClasses.Items.AddRange(($nsc.Item( "$mp"))) + $status.Text = "$mp : $($lvClasses.Items.count) Classes" + $lvClasses.EndUpdate() + $lblClasses.Text = $lvClasses.Items.count + } else { + if(${Global:WmiExplorer.dtClasses}.Select("Namespace='$mp'")){ # In DataTable Cache + $status.BackColor = 'beige' + $status.Text = "$mp : Classes in Cache, DoubleClick NameSpace to retrieve Classes" + } else { + $status.BackColor = 'LightSalmon' + $status.Text = "$mp : Classes not recieved yet, DoubleClick NameSpace to retrieve Classes" + } + } +}) # $TVNameSpaces.add_AfterSelect +#endregion +#region Processing Functions +#region ConnectToComputer +# Connect to Computer +Function ConnectToComputer { + + $computer = $txtComputer.Text + Set-StatusBar 'beige' "Connecting to : $computer" + + # Try to Connect to Computer + &{ + trap { + Set-StatusBar 'Red' "Connecting to : $computer Failed" + $slMessage.Text = "$_.message" + Continue + } + &{ + # Connect to WMI root + + $script:WmiConnection.path = "\\$computer\root" + $script:WmiConnection.options = $Script:ConnectionOptions + $script:WmiConnection.Connect() + + # Get Avaiable NameSpaces + + $opt = new-object system.management.ObjectGetOptions + $opt.UseAmendedQualifiers = $true + $Script:NameSpaces = new-object System.Management.ManagementClass( + $script:WmiConnection,[Management.ManagementPath]'__Namespace',$opt + ) + Update-Status + # Create a TreeNode for the WMI Root found + $computer = $txtComputer.Text + $TNRoot = new-object System.Windows.Forms.TreeNode("Root") + $TNRoot.Name = $Computer + $TNRoot.Text = $lblPath.Text + $TNRoot.tag = "Enumerated" + + # Create NameSpaces List + + $Script:NameSpaces.PSbase.getInstances() | Sort-Object $_.name | + ForEach-Object { + $TN = new-object System.Windows.Forms.TreeNode + $TN.Name = $_.name + $TN.Text = ("{0}\{1}" -f $_.__NameSpace,$_.name) + $TN.tag = "NotEnumerated" + [void]$TNRoot.Nodes.Add($TN) + } + # Add to Treeview + $tvNameSpaces.Nodes.clear() + [void]$TVNamespaces.Nodes.Add($TNRoot) + + # update StatusBar + Set-StatusBar 'YellowGreen' "Connected to : $computer" + } + } +} # ConnectToComputer +#endregion +#region GetClasseFromNameSpace +# Get Classes on DoubleClick on Namespace in TreeView +Function GetClassesFromNameSpace { + if ($this.SelectedNode.name -ne $script:computer){ + # Connect to WMI Namespace + + $mp = ("{0}\{1}" -f $script:WmiConnection.path.path.replace('\root','') , $this.SelectedNode.text) + # Update Status + + $lvClasses.BeginUpdate() + $lvClasses.Items.Clear() + $i = 0 ;$lblClasses.Text = $i; $lblclasses.Update() + if($Script:nsc.Item("$mp")){ #in Namespace Cache, so just attach to ListView again + + $lvClasses.Items.AddRange(($nsc.Item( "$mp"))) + # $lvClasses.Items.AddRange(([System.Windows.Forms.ListViewItem[]]($nsc.Item( "$mp") | + # where {$_.name -like 'win32_*'}))) + $status.Text = "$mp : $($lvClasses.Items.count) Classes" + $i = $lvClasses.Items.count + } else { #Not In NameSpace Cache + if(${Global:WmiExplorer.dtClasses}.Select("Namespace = '$mp'")){ # In DataTable cache, so get from there + $status.Text = "loading cache from $($this.SelectedNode.name)" + $statusStrip.Update() + ${Global:WmiExplorer.dtClasses}.Select("Namespace = '$mp'") | + foreach { + $i++ + $LI = New-Object system.Windows.Forms.ListViewItem + $li.Name = $_.name + $li.Text = $_.name + $li.SubItems.add($_.description) + $li.SubItems.add($_.path) + $li.ToolTipText = ($_.description) + $lvClasses.Items.add($li) + $status.Text = "$mp : $($lvClasses.Items.count) Classes" + $lblClasses.Text = $lvClasses.Items.count + } + } else { # Not in any Cache , Load WMI Classes + Set-StatusBar 'Khaki' "Getting Classes from $($this.SelectedNode.name)" + $mc = new-object System.Management.ManagementClass($mp,$opt) + $eo = New-Object system.management.EnumerationOptions + $eo.EnumerateDeep = $true + $eo.UseAmendedQualifiers = $true + $Mc.psbase.GetSubclasses($eo) | + ForEach-Object { + $i++ ; if ($i%10 -eq 0){$lblClasses.Text = $i;$lblclasses.Update() } + Trap{$script:Description = "[Empty]";continue} + $script:description = $_.psbase.Qualifiers.item("description").value + ${Global:WmiExplorer.dtClasses}.Rows.Add($_.__path,$mp,$_.name,$description) + $LI = New-Object system.Windows.Forms.ListViewItem + $li.Name = $_.name + $li.Text = $_.name + $li.SubItems.add($description) + $li.SubItems.add($_.__path) + $li.ToolTipText = $description + $lvClasses.Items.add($li) + } + $status.Text = "Ready, Retrieved $i Classes from $mp" + } #if(${Global:WmiExplorer.dtClasses}.Select("Namespace = '$mp'")) + $lvClasses.Sorting = 'Ascending' + $lvClasses.Sort() + $script:nsc.Add($mp,(([System.Windows.Forms.ListViewItem[]]($lvClasses.Items)).clone())) + + } + $lvClasses.EndUpdate() + $this.selectedNode.BackColor = 'AliceBlue' + $lblClasses.Text = $i;$lblclasses.Update() + $status.BackColor = 'YellowGreen' + $statusStrip.Update() + } #if($Script:nsc.Item("$mp")) + +} # GetClassesFromNameSpace +#endregion +#region GetWmiClass +Function GetWmiClass { + # Update Status + + $status.Text = "Retrieving Class" + $status.BackColor = 'Khaki' + $statusstrip.Update() + $lblClass.Text = $this.SelectedItems |ForEach-Object {$_.name} + $lblPath.text = $this.SelectedItems |ForEach-Object {"$($_.SubItems[2].text)"} + + # Add HelpText + + $rtbHelp.Text = "" + $rtbHelp.selectionFont = $fontBold + $rtbHelp.appendtext("$($lblClass.Text)`n`n") + $rtbHelp.selectionFont = $fontNormal + $rtbHelp.appendtext(($this.SelectedItems |ForEach-Object {"$($_.SubItems[1].text)"})) + $rtbHelp.appendtext("`n") + $path = $lblPath.text + + $opt = new-object system.management.ObjectGetOptions + $opt.UseAmendedQualifiers = $true + + $script:WmiClass = new-object system.management.ManagementClass($path,$opt) + # Add Property Help + + $rtbHelp.selectionFont = $fontBold + $rtbHelp.appendtext("`n$($lblClass.Text) Properties :`n`n") + $rtbHelp.selectionFont = $fontNormal + + $i = 0 ;$lblProperties.Text = $i; $lblProperties.Update() + $clbproperties.Items.Clear() + $clbProperties.Items.add('WmiPath',$False) + + $script:WmiClass.psbase.properties | + ForEach-Object { + $i++ ;$lblProperties.Text = $i; $lblProperties.Update() + $clbProperties.Items.add($_.name,$true) + $rtbHelp.selectionFont = $fontBold + $rtbHelp.appendtext("$($_.Name) :`n" ) + &{ + Trap {$rtbHelp.appendtext("[Empty]");Continue} + $rtbHelp.appendtext($_.psbase.Qualifiers["description"].value) + } + $rtbHelp.appendtext("`n`n") + } # ForEach-Object + + # Create Method Help + $rtbHelp.selectionFont = $fontBold + $rtbHelp.appendtext( "$($lblClass.Text) Methods :`n`n" ) + $i = 0 ;$lblMethods.Text = $i; $lblMethods.Update() + $lbmethods.Items.Clear() + + $script:WmiClass.psbase.Methods | + ForEach-Object { + $i++ ;$lblMethods.Text = $i; $lblMethods.Update() + $lbMethods.Items.add($_.name) + $rtbHelp.selectionFont = $fontBold + $rtbHelp.appendtext("$($_.Name) :`n") + &{ + Trap {$rtbHelp.Text += "[Empty]"} + $rtbHelp.appendtext($_.Qualifiers["description"].value) + } + $rtbHelp.appendtext("`n`n" ) + } #ForEach-Object + + $tabControl.SelectedTab = $tabpage1 + $status.Text = "Retrieved Class" + $status.BackColor = 'YellowGreen' + $statusstrip.Update() +} # GetWmiClass +#endregion +#region GetWmiInstances +Function GetWmiInstances { + $status.Text = "Getting Instances for $($lblClass.text)" + $status.BackColor = 'Red' + $statusstrip.Update() + $tabControl.SelectedTab = $tabInstances + $MC = new-object system.management.ManagementClass $lblPath.text + $MOC = $MC.PSbase.getInstances() + + #trap{"Class Not found";break} + + $DT = new-object System.Data.DataTable + $DT.TableName = $lblClass.text + $Col = new-object System.Data.DataColumn + $Col.ColumnName = "WmiPath" + $DT.Columns.Add($Col) + $i = 0 + $j = 0 ;$lblInstances.Text = $j; $lblInstances.Update() + $MOC | ForEach-Object { + $j++ ;$lblInstances.Text = $j; $lblInstances.Update() + $MO = $_ + + # Make a DataRow + $DR = $DT.NewRow() + $Col = new-object System.Data.DataColumn + + $DR.Item("WmiPath") = $mo.__PATH + $MO.psbase.properties | + ForEach-Object { + $prop = $_ + If ($i -eq 0) { + + # Only On First Row make The Headers + + $Col = new-object System.Data.DataColumn + $Col.ColumnName = $prop.Name.ToString() + $prop.psbase.Qualifiers | ForEach-Object { + If ($_.Name.ToLower() -eq "key") { + $Col.ColumnName = $Col.ColumnName + "*" + } + } + $DT.Columns.Add($Col) + } + + # fill dataRow + + if ($prop.value -eq $null) { + $DR.Item($prop.Name) = "[empty]" + } + ElseIf ($prop.IsArray) { + $ofs = ";" + $DR.Item($prop.Name) ="$($prop.value)" + $ofs = $null + } + Else { + $DR.Item($prop.Name) = $prop.value + #Item is Key try again with * + trap{$DR.Item("$($prop.Name)*") = $prop.Value.tostring();continue} + } + } + # Add the row to the DataTable + $DT.Rows.Add($DR) + $i += 1 + } + $DGInstances.DataSource = $DT.psObject.baseobject + $DGInstances.Columns.Item('WmiPath').visible = $clbProperties.GetItemChecked(0) + $status.Text = "Retrieved $j Instances" + $status.BackColor = 'YellowGreen' + $statusstrip.Update() +} # GetWmiInstances +#endregion +#region OutputWmiInstance +Function OutputWmiInstance { + if ( $this.SelectedRows.count -eq 1 ) { + if (-not $Script:InstanceTab) {$Script:InstanceTab = new-object System.Windows.Forms.TabPage + $Script:InstanceTab.Name = 'Instance' + $Script:rtbInstance = new-object System.Windows.Forms.RichTextBox + $Script:rtbInstance.Dock = [System.Windows.Forms.DockStyle]::Fill + $Script:rtbInstance.Font = $fontCode + $Script:rtbInstance.DetectUrls = $false + $Script:InstanceTab.controls.add($Script:rtbInstance) + $TabControl.TabPages.add($Script:InstanceTab) + } + $Script:InstanceTab.Text = "Instance = $($this.SelectedRows | ForEach-Object {$_.DataboundItem.wmiPath.split(':')[1]})" + $Script:rtbInstance.Text = $this.SelectedRows |ForEach-Object {$_.DataboundItem |Format-List * | out-String -width 1000 } + $tabControl.SelectedTab = $Script:InstanceTab + } +} # OutputWmiInstance +#endregion +#region GetWmiMethod +Function GetWmiMethod { + $WMIMethod = $this.SelectedItem + $WmiClassName = $script:WmiClass.__Class + $tabControl.SelectedTab = $tabMethods + #$rtbmethods.ForeColor = 'Green' + $rtbMethods.Font = new-object System.Drawing.Font("Microsoft Sans Serif",8) + $rtbMethods.text = "" + $rtbMethods.selectionFont = $fontBold + + $rtbMethods.AppendText(("{1} Method : {0} `n" -f $this.SelectedItem , $script:WmiClass.__Class)) + $rtbMethods.AppendText("`n") + $rtbMethods.selectionFont = $fontBold + $rtbMethods.AppendText("OverloadDefinitions:`n") + $rtbMethods.AppendText("$($script:WmiClass.$WMIMethod.OverloadDefinitions)`n`n") + $Qualifiers=@() + $script:WmiClass.psbase.Methods[($this.SelectedItem)].Qualifiers | ForEach-Object {$qualifiers += $_.name} + #$rtbMethods.AppendText( "$qualifiers`n" ) + $static = $Qualifiers -Contains "Static" + $rtbMethods.selectionFont = $fontBold + $rtbMethods.AppendText( "Static : $static`n" ) + If ($static) { + $rtbMethods.AppendText( "A Static Method does not an Instance to act upon`n`n" ) + $rtbMethods.AppendText("`n") + + $rtbMethods.SelectionColor = 'Green' + $rtbMethods.SelectionFont = $fontCode + $rtbMethods.AppendText("# Sample Of Connecting to a WMI Class`n`n") + $rtbMethods.SelectionColor = 'Black' + $rtbMethods.SelectionFont = $fontCode + $SB = new-Object text.stringbuilder + $SB = $SB.Append('$Computer = "') ; $SB = $SB.AppendLine(".`"") + $SB = $SB.Append('$Class = "') ; $SB = $SB.AppendLine("$WmiClassName`"") + $SB = $SB.Append('$Method = "') ; $SB = $SB.AppendLine("$WmiMethod`"`n") + $SB = $SB.AppendLine('$MC = [WmiClass]"\\$Computer\' + "$($script:WmiClass.__NAMESPACE)" + ':$Class"') + #$SB = $SB.Append('$MP.Server = "') ; $SB = $SB.AppendLine("$($MP.Server)`"") + #$SB = $SB.Append('$MP.NamespacePath = "') ; $SB = $SB.AppendLine("$($script:WmiClass.__NAMESPACE)`"") + #$SB = $SB.AppendLine('$MP.ClassName = $Class') + $SB = $SB.AppendLine("`n") + #$SB = $SB.AppendLine('$MC = new-object system.management.ManagementClass($MP)') + $rtbMethods.AppendText(($sb.tostring())) + $rtbMethods.SelectionColor = 'Green' + $rtbMethods.SelectionFont = $fontCode + $rtbMethods.AppendText("# Getting information about the methods`n`n") + $rtbMethods.SelectionColor = 'Black' + $rtbMethods.SelectionFont = $fontCode + $rtbMethods.AppendText( + '$mc' + "`n" + + '$mc | Get-Member -membertype Method' + "`n" + + "`$mc.$WmiMethod" + ) + } Else { + $rtbMethods.AppendText( "This is a non Static Method and needs an Instance to act upon`n`n" ) + $rtbMethods.AppendText( "The Example given will use the Key Properties to Connect to a WMI Instance : `n`n" ) + $rtbMethods.SelectionColor = 'Green' + $rtbMethods.SelectionFont = $fontCode + $rtbMethods.AppendText("# Example Of Connecting to an Instance`n`n") + + $rtbMethods.SelectionColor = 'Black' + $rtbMethods.SelectionFont = $fontCode + $SB = new-Object text.stringbuilder + $SB = $SB.AppendLine('$Computer = "."') + $SB = $SB.Append('$Class = "') ; $SB = $SB.AppendLine("$WmiClassName.`"") + $SB = $SB.Append('$Method = "') ; $SB = $SB.AppendLine("$WMIMethod`"") + $SB = $SB.AppendLine("`n# $WmiClassName. Key Properties :") + $Filter = "" + $script:WmiClass.psbase.Properties | ForEach-Object { + $Q = @() + $_.psbase.Qualifiers | ForEach-Object {$Q += $_.name} + $key = $Q -Contains "key" + If ($key) { + $CIMType = $_.psbase.Qualifiers["Cimtype"].Value + $SB = $SB.AppendLine("`$$($_.Name) = [$CIMType]") + $Filter += "$($_.name) = `'`$$($_.name)`'" + } + } + $SB = $SB.Append("`n" + '$filter=');$SB = $SB.AppendLine("`"$filter`"") + $SB = $SB.AppendLine('$MC = get-WMIObject $class -computer $Computer -Namespace "' + + "$($script:WmiClass.__NAMESPACE)" + '" -filter $filter' + "`n") + $SB = $SB.AppendLine('# $MC = [Wmi]"\\$Computer\Root\CimV2:$Class.$filter"') + $rtbMethods.AppendText(($sb.tostring())) + } + $SB = $SB.AppendLine('$InParams = $mc.psbase.GetMethodParameters($Method)') + $SB = $SB.AppendLine("`n") + # output Method Parameter Help + $rtbMethods.selectionFont = $fontBold + $rtbMethods.AppendText("`n`n$WmiClassName. $WMIMethod Method :`n`n") + $q = $script:WmiClass.PSBase.Methods[$WMIMethod].Qualifiers | foreach {$_.name} + if ($q -contains "Description") { + $rtbMethods.AppendText(($script:WmiClass.psbase.Methods[$WMIMethod].psbase.Qualifiers["Description"].Value)) + } + + $rtbMethods.selectionFont = $fontBold + $rtbMethods.AppendText("`n`n$WMIMethod Parameters :`n") + # get the Parameters + + $inParam = $script:WmiClass.psbase.GetMethodParameters($WmiMethod) + $HasParams = $False + if ($true) { + trap{$rtbMethods.AppendText('[None]') ;continue} + $inParam.PSBase.Properties | foreach { + $Q = $_.Qualifiers | foreach {$_.name} + # if Optional Qualifier is not present then Parameter is Mandatory + $Optional = $q -contains "Optional" + $CIMType = $_.Qualifiers["Cimtype"].Value + $rtbMethods.AppendText("`nName = $($_.Name) `nType = $CIMType `nOptional = $Optional") + # write Parameters to Example script + if ($Optional -eq $TRUE) {$SB = $SB.Append('# ')} + $SB = $SB.Append('$InParams.');$SB = $SB.Append("$($_.Name) = ");$SB = $SB.AppendLine("[$CIMType]") + if ($q -contains "Description") {$rtbMethods.AppendText($_.Qualifiers["Description"].Value)} + $HasParams = $true + } + } + # Create the Rest of the Script + $rtbMethods.selectionFont = $fontBold + $rtbMethods.AppendText("`n`nTemplate Script :`n") + # Call diferent Overload as Method has No Parameters + If ($HasParams -eq $True) { + $SB = $SB.AppendLine("`n`"Calling $WmiClassName. : $WMIMethod with Parameters :`"") + $SB = $SB.AppendLine('$inparams.PSBase.properties | select name,Value | format-Table') + $SB = $SB.AppendLine("`n" + '$R = $mc.PSBase.InvokeMethod($Method, $inParams, $Null)') + }Else{ + $SB = $SB.AppendLine("`n`"Calling $WmiClassName. : $WMIMethod `"") + $SB = $SB.AppendLine("`n" + '$R = $mc.PSBase.InvokeMethod($Method,$Null)') + } + $SB = $SB.AppendLine('"Result :"') + $SB = $SB.AppendLine('$R | Format-list' + "`n`n") + # Write Header of the Sample Script : + + $rtbMethods.SelectionColor = 'Green' + $rtbMethods.SelectionFont = $fontCode + $rtbMethods.AppendText(@" +# $WmiClassName. $WMIMethod-Method Template Script" +# Created by PowerShell WmiExplorer +# /\/\o\/\/ 2006 +# www.ThePowerShellGuy.com +# +# Fill InParams values before Executing +# InParams that are Remarked (#) are Optional +"@ + ) + $rtbMethods.SelectionColor = 'Black' + #$rtbMethods.SelectionFont = $fontCode + $rtbMethods.AppendText("`n`n" + $SB) + $rtbMethods.SelectionFont = new-object System.Drawing.Font("Lucida Console",6 ) + $rtbMethods.AppendText("`n`n Generated by the PowerShell WMI Explorer /\/\o\/\/ 2006" ) + +} # GetWmiMethod +#endregion +#endregion +# Show the Form +$FrmMain.Add_Shown({$FrmMain.Activate()}) + +trap {Write-Host $_ ;$status.Text = "unexpected error";$slMessage.Text = "$_.message";continue} +& { + [void]$FrmMain.showdialog() +} +# Resolve-Error $Error[0] | out-string \ No newline at end of file diff --git a/scripts/x64dbg/install.bat b/scripts/x64dbg/install.bat new file mode 100644 index 00000000000..8b090b5ec73 --- /dev/null +++ b/scripts/x64dbg/install.bat @@ -0,0 +1,11 @@ +@ECHO OFF & PUSHD "%~DP0" +REG QUERY "HKU\S-1-5-19">NUL 2>&1 || ( +reg add "HKCU\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers" /f /v "%~dp0release\x64\x64dbg.exe" /d "~ RUNASADMIN" >NUL 2>NUL +reg add "HKCU\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers" /f /v "%~dp0release\x32\x32dbg.exe" /d "~ RUNASADMIN" >NUL 2>NUL +) +REG QUERY "HKU\S-1-5-19">NUL 2>&1 || (powershell -Command "Start-Process '%~sdpnx0' -Verb RunAs"&&EXIT) + +start "" /wait "%~dp0release\x96dbg.exe" +ECHO.&ECHO 添加完成 +ECHO.&ECHO ghxi.com +TIMEOUT /t 3 >NUL&EXIT diff --git a/scripts/x64dbg/uninstall.bat b/scripts/x64dbg/uninstall.bat new file mode 100644 index 00000000000..42a299a2b2c --- /dev/null +++ b/scripts/x64dbg/uninstall.bat @@ -0,0 +1,28 @@ +@ECHO OFF & PUSHD "%~DP0" +REG QUERY "HKU\S-1-5-19">NUL 2>&1 || ( +reg add "HKCU\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers" /f /v "%~dp0release\x64\x64dbg.exe" /d "~ RUNASADMIN" >NUL 2>NUL +reg add "HKCU\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers" /f /v "%~dp0release\x32\x32dbg.exe" /d "~ RUNASADMIN" >NUL 2>NUL +) +REG QUERY "HKU\S-1-5-19">NUL 2>&1 || (powershell -Command "Start-Process '%~sdpnx0' -Verb RunAs"&&EXIT) + +reg delete "HKLM\SOFTWARE\Classes\.dd32" /f >NUL 2>NUL +reg delete "HKLM\SOFTWARE\Classes\.dd64" /f >NUL 2>NUL +reg delete "HKLM\exefile\Shell\Debug with x32dbg" /f >NUL 2>NUL +reg delete "HKLM\exefile\Shell\Debug with x64dbg" /f >NUL 2>NUL +reg delete "HKLM\dllfile\Shell\Debug with x32dbg" /f >NUL 2>NUL +reg delete "HKLM\dllfile\Shell\Debug with x64dbg" /f >NUL 2>NUL +reg delete "HKCR\dllfile\Shell\Debug with x64dbg" /f >NUL 2>NUL +reg delete "HKCR\dllfile\Shell\Debug with x32dbg" /f >NUL 2>NUL +reg delete "HKCR\exefile\Shell\Debug with x64dbg" /f >NUL 2>NUL +reg delete "HKCR\exefile\Shell\Debug with x32dbg" /f >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers" /f /v "%~dp0release\x64\x64dbg.exe" >NUL 2>NUL +reg delete "HKCU\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers" /f /v "%~dp0release\x32\x32dbg.exe" >NUL 2>NUL +del/q "%UserProfile%\桌面\x*dbg.lnk" >NUL 2>NUL +del/q "%AllUsersProfile%\桌面\x*dbg.lnk" >NUL 2>NUL +del/q "%Public%\Desktop\x*dbg.lnk" >NUL 2>NUL +del/q "%UserProfile%\Desktop\x*dbg.lnk" >NUL 2>NUL +del/q "%UserProfile%\Desktop\x*dbg.lnk" >NUL 2>NUL +del/q "%UserProfile%\Desktop\x*dbg.lnk" >NUL 2>NUL +ECHO.&ECHO 删除完成 +ECHO.&ECHO ghxi.com +TIMEOUT /t 3 >NUL&EXIT diff --git a/scripts/xyplorer/xyplorer-activate.ps1 b/scripts/xyplorer/xyplorer-activate.ps1 new file mode 100644 index 00000000000..5267b911035 --- /dev/null +++ b/scripts/xyplorer/xyplorer-activate.ps1 @@ -0,0 +1,3 @@ +Copy-Item "$(scoop prefix xyplorer-pro-crack)\XYplorer.Keygen.Activator.exe" "$(scoop prefix xyplorer-pro-portable)" -ErrorAction SilentlyContinue -Force + +sudo Start-Process "$(scoop prefix xyplorer-pro-portable)\XYplorer.Keygen.Activator.exe" -ArgumentList @("/activateinstall") -WorkingDirectory "$(scoop prefix xyplorer-pro-portable)" -WindowStyle Hidden