Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: shwang1114/InjectLib
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: main
Choose a base ref
...
head repository: lpdswingteams/InjectLib
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: main
Choose a head ref

There isn’t anything to compare.

shwang1114:main and lpdswingteams:main are entirely different commit histories.

Showing with 4,204 additions and 0 deletions.
  1. +6 −0 .gitignore
  2. +61 −0 Adobe说明.md
  3. BIN EmbyServer/Emby.Web.dll
  4. +312 −0 EmbyServer/embypremiere.js
  5. +13 −0 EmbyServer/readme.md
  6. +674 −0 LICENSE
  7. +28 −0 Surge一键脚本/readme.md
  8. +112 −0 Surge一键脚本/surge.sh
  9. +11 −0 Surge激活脚本/Surge脚本配置例子.conf
  10. +122 −0 Surge激活脚本/paddle_act.js
  11. +11 −0 Utils.rb
  12. +425 −0 config.json
  13. BIN imgs/decodeSSL.png
  14. BIN imgs/image-1.png
  15. BIN imgs/image-10.png
  16. BIN imgs/image-2.png
  17. BIN imgs/image-3.png
  18. BIN imgs/image-4.png
  19. BIN imgs/image-5.png
  20. BIN imgs/image-6.png
  21. BIN imgs/image-7.png
  22. BIN imgs/image-8.png
  23. BIN imgs/image-9.png
  24. BIN imgs/image.png
  25. BIN imgs/img.png
  26. BIN imgs/img3.png
  27. BIN imgs/img_1.png
  28. BIN imgs/img_2.png
  29. BIN imgs/js配置.png
  30. BIN imgs/keyrings.png
  31. +201 −0 main.rb
  32. +574 −0 readme.md
  33. +17 −0 tool/Crossover Activation Script.command
  34. +25 −0 tool/DIffPatchCode.py
  35. +100 −0 tool/Parallels_原始人_起洞.command
  36. +26 −0 tool/Patch.json
  37. BIN tool/SearchParttenCode
  38. +4 −0 tool/bartender.sh
  39. +44 −0 tool/buhoCleaner.sh
  40. +6 −0 tool/camtasia.sh
  41. +67 −0 tool/cmm.sh
  42. +67 −0 tool/cmm_o.sh
  43. +10 −0 tool/cmmxAgent.sh
  44. BIN tool/insert_dylib
  45. +3 −0 tool/ishot.sh
  46. BIN tool/libInjectLib.dylib
  47. BIN tool/libInjectLib_Legacy.dylib
  48. +1 −0 tool/licenses.json
  49. +53 −0 tool/macfans.sh
  50. +4 −0 tool/paste.sh
  51. +88 −0 tool/pd.sh
  52. +10 −0 tool/proxyManAgent.sh
  53. +45 −0 tool/proxyman.sh
  54. +45 −0 tool/proxyman_o.sh
  55. +3 −0 tool/recorder.sh
  56. +19 −0 tool/signkeep.xml
  57. +47 −0 tool/stash.sh
  58. +70 −0 tool/surge copy.sh
  59. +20 −0 tool/surgeAgent.sh
  60. +57 −0 tool/surge_o.sh
  61. +1 −0 tool/tablePlus.sh
  62. +72 −0 tool/terminus_zh_CN/cn.py
  63. +742 −0 tool/terminus_zh_CN/lang.txt
  64. +8 −0 原神_启动.command
6 changes: 6 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
.DS_Store
*.iml
.idea
.vscode
.ruby-lsp
IACPLHttpTransferClient
61 changes: 61 additions & 0 deletions Adobe说明.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
# Adobe 套件的使用方法

## 以LR CC为例:

___

1. 卸载已经安装的acc:AdobeCreativeCloudCleanerTool Mac.dmg

https://www.123pan.com/s/X5tA-Eyuwh.html

2. 从adobe网站下载acc 5.9.0,然后断网安装它。

下载地址:

Intel:
https://trials.adobe.com/AdobeProducts/KCCC/CCD/5_9_0/osx10/ACCCx5_9_0_373.dmg

ARM:
https://trials.adobe.com/AdobeProducts/KCCC/CCD/5_9_0/macarm64/ACCCx5_9_0_373.dmg


3. **下载adobe packager**

<img width="1680" alt="1" src="https://github.com/LoveJessyChen/InjectLib/assets/48858531/bdbb5467-e345-4ac2-a4e4-23f0cc08a2ae">

3.1 从以下地址clone后下载这个adobe packager

https://github.com/Drovosek01/adobe-packager

下载方法是看下图,先点击绿色的code,再点击“Download ZIP”。

3.2 解压后直接双击运行ccdl.command


<img width="930" alt="2" src="https://github.com/LoveJessyChen/InjectLib/assets/48858531/6e5d0790-9452-427e-839e-625e74f654b7">

4. 下载并安装Lightroom CC软件

4.1 根据屏幕提示输入 v6 然后回车,输入y然后回车。然后稍作等待 ,然后弹出adobe套件代码的列表之后。

<img width="593" alt="3" src="https://github.com/LoveJessyChen/InjectLib/assets/48858531/ddb76d74-4026-40db-b549-b172ebb2402a">


4.2 输入现在要下载的Lightroom CC 套件,查询列表可以知道代码是LRCC

然后我们输入LRCC,并回车,选择版本输入6.5并回车;选择语言默认是中文 直接回车。

<img width="590" alt="4" src="https://github.com/LoveJessyChen/InjectLib/assets/48858531/21238761-f2ec-412d-b385-550053584013">


然后弹出窗口选择下载到哪个文件夹,我们下载到桌面。点击选取。

<img width="814" alt="5" src="https://github.com/LoveJessyChen/InjectLib/assets/48858531/d868252a-1970-4d02-9980-6440a1ada030">


然后双击这个install开头的安装包就可以安装了。

(可选:这里也可以把products文件提取出来
替换到脚本安装器来安装,用这个方法就不限制acc或者anticc的版本:https://www.123pan.com/s/X5tA-kyuwh.html)

5. 然后运行脚本注入补丁。 即可完美享受,不受时间限制。
Binary file added EmbyServer/Emby.Web.dll
Binary file not shown.
312 changes: 312 additions & 0 deletions EmbyServer/embypremiere.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,312 @@
define([
"exports",
"./../modules/viewmanager/baseview.js",
"./../modules/emby-elements/emby-input/emby-input.js",
"./../modules/emby-elements/emby-button/emby-button.js",
"./../modules/emby-elements/emby-collapse/emby-collapse.js",
"./../modules/common/globalize.js",
"./../modules/loading/loading.js",
"./../modules/registrationservices/registrationservices.js",
"./../modules/common/dialogs/confirm.js",
"./../modules/emby-apiclient/connectionmanager.js",
], function (
_exports,
_baseview,
_embyInput,
_embyButton,
_embyCollapse,
_globalize,
_loading,
_registrationservices,
_confirm,
_connectionmanager
) {
function load(page) {
var apiClient;
_loading.default.show(),
(apiClient = ApiClient)
.getJSON(apiClient.getUrl("Plugins/SecurityInfo"))
.then(function (info) {
info.IsMBSupporter = true;
(page.querySelector(".txtSupporterKey").value =
info.SupporterKey || ""),
info.SupporterKey && !info.IsMBSupporter
? (page
.querySelector(".txtSupporterKey")
.classList.add("invalidEntry"),
page.querySelector(".notSupporter").classList.remove("hide"))
: (page
.querySelector(".txtSupporterKey")
.classList.remove("invalidEntry"),
page.querySelector(".notSupporter").classList.add("hide")),
info.IsMBSupporter
? (page
.querySelector(".supporterContainer")
.classList.add("hide"),
(function (key) {
key = "key=" + key + "&serverId=" + ApiClient.serverId();
return new Promise((resolve) =>
resolve({
deviceStatus: 0,
planType: "超级会员",
subscriptions: [
{
autoRenew: true,
store: "秋城落叶",
feature: "all",
planType: "超级会员",
expDate: "且会员资格永远不会失效",
},
],
})
);
})(info.SupporterKey).then(function (statusInfo) {
if (statusInfo) {
var statusLine,
indicator = page.querySelector(
".status-indicator .listItemIcon"
),
extendedPlans = page.querySelector(".extended-plans");
switch (
((extendedPlans.innerHTML = _globalize.default.translate(
"MessagePremiereExtendedPlans",
'<a is="emby-linkbutton" class="button-link" href="https://emby.media/premiere-ext.html" target="_blank">',
"</a>"
)),
statusInfo.deviceStatus)
) {
case 2:
(statusLine = _globalize.default.translate(
"MessagePremiereStatusOver",
statusInfo.planType
)),
indicator.classList.add("expiredBackground"),
indicator.classList.remove("nearExpiredBackground"),
(indicator.innerHTML = "&#xE000;"),
indicator.classList.add("autortl"),
extendedPlans.classList.remove("hide");
break;
case 1:
(statusLine = _globalize.default.translate(
"MessagePremiereStatusClose",
statusInfo.planType
)),
indicator.classList.remove("expiredBackground"),
indicator.classList.add("nearExpiredBackground"),
(indicator.innerHTML = "&#xE000;"),
indicator.classList.add("autortl"),
extendedPlans.classList.remove("hide");
break;
default:
(statusLine = _globalize.default.translate(
"MessagePremiereStatusGood",
statusInfo.planType
)),
indicator.classList.remove("expiredBackground"),
indicator.classList.remove("nearExpiredBackground"),
(indicator.innerHTML = "&#xE5CA;"),
indicator.classList.remove("autortl"),
extendedPlans.classList.add("hide");
}
page.querySelector(".premiere-status").innerHTML =
statusLine;
var subsElement = page.querySelector(".premiere-subs");
statusInfo.subscriptions &&
0 < statusInfo.subscriptions.length
? ((page.querySelector(
".premiere-subs-content"
).innerHTML =
((subs = statusInfo.subscriptions),
(key = info.SupporterKey),
subs.map(function (item) {
var itemHtml = "",
makeLink =
item.autoRenew && "Stripe" === item.store,
tagName = makeLink ? "button" : "div";
return (
itemHtml +
(("button" == tagName
? '<button type="button"'
: "<div") +
' class="listItem listItem-button listItem-border' +
(makeLink ? " lnkSubscription" : "") +
'" data-feature="' +
item.feature +
'" data-key="' +
key +
'">') +
'<i class="listItemIcon md-icon autortl">&#xe1b2;</i>' +
'<div class="listItemBody two-line">' +
'<div class="listItemBodyText">' +
_globalize.default.translate(
"ListItemPremiereSub",
item.planType,
item.expDate,
item.store
) +
"</div>" +
'<div class="listItemBodyText listItemBodyText-secondary">' +
_globalize.default.translate(
"Stripe" === item.store
? item.autoRenew
? "LabelClickToCancel"
: "LabelAlreadyCancelled"
: "LabelCancelInfo",
item.store
) +
"</div>" +
"</div>" +
("</" + tagName + ">")
);
}))),
(subs = page.querySelector(".lnkSubscription")) &&
subs.addEventListener("click", cancelSub),
subsElement.classList.remove("hide"))
: subsElement.classList.add("hide"),
page
.querySelector(".isSupporter")
.classList.remove("hide");
}
var subs, key;
}))
: (page
.querySelector(".supporterContainer")
.classList.remove("hide"),
page.querySelector(".isSupporter").classList.add("hide")),
_loading.default.hide();
});
}
function cancelSub(e) {
console.log("Cancel ");
var feature = this.getAttribute("data-feature"),
key = this.getAttribute("data-key");
(0, _confirm.default)({
title: _globalize.default.translate("HeaderCancelSub"),
text: _globalize.default.translate("MessageConfirmSubCancel"),
confirmText: _globalize.default.translate("ButtonCancelSub"),
cancelText: _globalize.default.translate("ButtonDontCancelSub"),
primary: "cancel",
}).then(function () {
console.log("after confirm"),
fetch("http://127.0.0.1:3000/admin/service/stripe/requestSubCancel", {
method: "POST",
body: "key=" + key + "&feature=" + feature,
headers: { "Content-Type": "application/x-www-form-urlencoded" },
}).then(
function (response) {
alertText({
text: _globalize.default.translate("MessageSubCancelReqSent"),
title: _globalize.default.translate("HeaderConfirmation"),
});
},
function (response) {
alertText({
text: _globalize.default.translate(
"MessageSubCancelError",
"cancel@emby.media"
),
});
}
);
});
}
function retrieveSupporterKey(e) {
_loading.default.show();
var email = this.querySelector(".txtEmail").value,
url =
"http://127.0.0.1:3000/admin/service/supporter/retrievekey?email=" +
email;
return (
console.log(url),
fetch(url, { method: "POST" })
.then(function (response) {
return response.json();
})
.then(function (result) {
_loading.default.hide(),
result.Success
? require(["toast"], function (toast) {
toast(
_globalize.default
.translate("MessageKeyEmailedTo")
.replace("{0}", email)
);
})
: require(["toast"], function (toast) {
toast(result.ErrorMessage);
}),
console.log(result);
}),
e.preventDefault(),
!1
);
}
function alertText(options) {
require(["alert"], function (alert) {
alert(options);
});
}
function updateSupporterKey(e) {
_loading.default.show();
var form = this,
key = form.querySelector(".txtSupporterKey").value;
return (
ApiClient.updatePluginSecurityInfo({ SupporterKey: key }).then(
function () {
_loading.default.hide(),
alertText(
key
? {
text: _globalize.default.translate("MessageKeyUpdated"),
title: _globalize.default.translate("HeaderConfirmation"),
}
: {
text: _globalize.default.translate("MessageKeyRemoved"),
title: _globalize.default.translate("HeaderConfirmation"),
}
),
_connectionmanager.default.resetRegistrationInfo(ApiClient),
load(form.closest(".page"));
},
function () {
_loading.default.hide(),
_connectionmanager.default.resetRegistrationInfo(ApiClient),
load(form.closest(".page"));
}
),
e.preventDefault(),
!1
);
}
function onSupporterLinkClick(e) {
_registrationservices.default.showPremiereInfo(),
e.preventDefault(),
e.stopPropagation();
}
function View(view, params) {
_baseview.default.apply(this, arguments),
view
.querySelector(".supporterKeyForm")
.addEventListener("submit", updateSupporterKey),
view
.querySelector(".lostKeyForm")
.addEventListener("submit", retrieveSupporterKey),
(view.querySelector(".benefits").innerHTML = _globalize.default.translate(
"HeaderSupporterBenefit",
'<a is="emby-linkbutton" class="lnkPremiere button-link" href="https://emby.media/premiere" target="_blank">',
"</a>"
)),
view
.querySelector(".lnkPremiere")
.addEventListener("click", onSupporterLinkClick);
}
Object.defineProperty(_exports, "__esModule", { value: !0 }),
(_exports.default = void 0),
require(["listViewStyle"]),
Object.assign(View.prototype, _baseview.default.prototype),
(View.prototype.onResume = function (options) {
_baseview.default.prototype.onResume.apply(this, arguments),
load(this.view);
}),
(_exports.default = View);
});
13 changes: 13 additions & 0 deletions EmbyServer/readme.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# 本教程旨在破解Emby Server for macOS
## 支持版本: 4.7.14.0
下载地址: https://github.com/MediaBrowser/Emby.Releases/releases/download/4.7.14.0/embyserver-osx-x64-4.7.14.0.zip

## 使用方法
Emby.Web.dll 替换到 /Applications/EmbyServer.app/Contents/MacOS/Emby.Web.dll

embypremiere.js 替换到 /Applications/EmbyServer.app/Contents/Resources/dashboard-ui/embypremiere/embypremiere.js

## 最后
我再说一遍:网上那些破解Emby Linux/Windows Server版本要替换四五个文件的人都是傻狗。

不就是修改个b前端js和改一下.Net资源文件的事情被你们搞这么复杂,老子一直以为这东西很难都懒得弄,没想到就他妈这么点b大点难度。一群饭桶!
Loading