YY-Thunks
1.0.2.8
See the version list below for details.
dotnet add package YY-Thunks --version 1.0.2.8
NuGet\Install-Package YY-Thunks -Version 1.0.2.8
<PackageReference Include="YY-Thunks" Version="1.0.2.8" />
paket add YY-Thunks --version 1.0.2.8
#r "nuget: YY-Thunks, 1.0.2.8"
// Install YY-Thunks as a Cake Addin
#addin nuget:?package=YY-Thunks&version=1.0.2.8
// Install YY-Thunks as a Cake Tool
#tool nuget:?package=YY-Thunks&version=1.0.2.8
YY-Thunks——让兼容Windows更轻松
1. 关于YY-Thunks
众所周知Windows XP每个SP都会新增大量API,而Windows 10每次更新又会新增大量API,这使得兼容不同版本的Windows需要大量的判断。
甚至大量开源代码已经不再兼容一些早期的Windows XP版本,比如 Windows XP RTM。难道就没有一种快速高效的方案解决无法定位程序输入点的问题吗?
YY-Thunks(鸭船),存在的目的就是抹平不同系统的差异,编译时单纯添加一个obj即可自动解决这些兼容性问题。让你兼容Windows更轻松!
[ 鸭船交流群 633710173 ]
1.1. 原理
使用LoadLibrary
以及GetProcAddress
动态加载API,不存在时做出补偿措施,最大限度模拟原始API行为,让你的程序正常运行。
1.2. 亮点
- 更快!更安全!
鸭船
内建2级缓存以及按需加载机制,同时自动加密所有函数指针,防止内存爆破攻击。最大程度减少不需要的、不必要的LoadLibrary以及GetProcAddress
调用以及潜在安全风险。 - 轻松兼容Windows XP,让你安心专注于业务逻辑。
- 完全的开放代码,广泛的接受用户意见,希望大家能踊跃的 pull requests,为
鸭船
添砖加瓦。
Product | Versions Compatible and additional computed target framework versions. |
---|---|
native | native is compatible. |
This package has no dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
1.0.9 | 441 | 10/22/2023 |
1.0.9-Beta4 | 104 | 10/4/2023 |
1.0.9-Beta3 | 171 | 10/1/2023 |
1.0.9-Beta2 | 201 | 8/10/2023 |
1.0.9-Beta1 | 130 | 6/22/2023 |
1.0.8 | 376 | 6/22/2023 |
1.0.8-Beta4 | 150 | 5/20/2023 |
1.0.8-Beta3 | 167 | 5/20/2023 |
1.0.8-Beta2 | 117 | 5/11/2023 |
1.0.8-Beta1 | 192 | 5/9/2023 |
1.0.7 | 328 | 4/19/2023 |
1.0.7-Beta4 | 142 | 3/18/2023 |
1.0.7-Beta3 | 186 | 3/8/2023 |
1.0.7-Beta2 | 202 | 1/24/2023 |
1.0.7-Beta1 | 203 | 11/5/2022 |
1.0.6 | 695 | 7/3/2022 |
1.0.6-Beta1 | 180 | 5/15/2022 |
1.0.5 | 560 | 3/13/2022 |
1.0.5-Beta3 | 174 | 1/28/2022 |
1.0.5-Beta2 | 180 | 11/9/2021 |
1.0.5-Beta1 | 230 | 10/9/2021 |
1.0.4 | 484 | 8/31/2021 |
1.0.4-Beta3 | 583 | 7/12/2021 |
1.0.4-Beta2 | 209 | 6/30/2021 |
1.0.4-Beta1 | 173 | 6/17/2021 |
1.0.3 | 374 | 6/11/2021 |
1.0.3-Beta4 | 211 | 5/7/2021 |
1.0.3-Beta3 | 269 | 1/8/2021 |
1.0.3-Beta2 | 241 | 11/23/2020 |
1.0.3-Beta1 | 239 | 11/16/2020 |
1.0.2.8 | 852 | 7/25/2020 |
1.0.1.23 | 686 | 11/11/2019 |
* 优化实现,改进YY-Thunks性能与体积
* 解决Bug,修复RtlpQueueWaitBlockToSRWLock与RtlpWakeSingle错误(感谢 清泠)
* 解决Bug,CLSID_ShellItem符号可能冲突问题(感谢 星期四)
* 解决Bug,与现代化stdio模式触发FAILIFMISMATCH链接错误。
* 添加 CompareStringEx
* 添加 CompareStringOrdinal
* 添加 SetFilePointerEx(Windows 2000模式)
* 添加 GetModuleHandleExW(A)(Windows 2000模式)
* 添加 WTSGetActiveConsoleSessionId(Windows 2000模式)
* 添加 StrToInt64ExW(A)(Windows 2000模式)
* 添加 GetNativeSystemInfo(Windows 2000模式)
* 添加 InitializeSListHead(Windows 2000模式)
* 添加 InterlockedFlushSList(Windows 2000模式)
* 添加 QueryDepthSList(Windows 2000模式)
* 添加 InterlockedPushEntrySList(Windows 2000模式)
* 添加 InterlockedPopEntrySList(Windows 2000模式)
* 添加 LoadLibraryExW(A) LOAD_LIBRARY_SEARCH_DLL_LOAD_DIR、LOAD_LIBRARY_SEARCH_APPLICATION_DIR、LOAD_LIBRARY_SEARCH_SYSTEM32支持
* 添加 SetupDiGetDevicePropertyW
* 添加 SetupDiSetDevicePropertyW
* 添加 SetupDiGetClassPropertyW
* 添加 SetupDiGetClassPropertyExW
* 添加 SetupDiSetClassPropertyW
* 添加 SetupDiSetClassPropertyExW