SharkLoadLibrary
是 DarkLoadLibrary 的完整版
在DarkLoadLibrary
中的darkloadlibrary.h
文件中, 作者定义了一组宏, 用于Control Flags
#define LOAD_LOCAL_FILE 0x00000001
#define LOAD_REMOTE_FILE 0x00000002
#define LOAD_MEMORY 0x00000003
#define NO_LINK 0x00010000
可以看到, 作者早就定义好了LOAD_REMOTE_FILE
的宏, 只不过在公开项目时删除了相关功能我将功能完善了, 开源在github供大家使用: SharkLoadLibrary
以下是项目介绍:
LoadLibrary for Children’s Paradise.
:sailboat: Folk From DarkLoadLibrary and thanks.
Feature
New feature: LOAD_REMOTE_FILE
Usage
PDARKMODULE DarkModule = DarkLoadLibrary(
LOAD_REMOTE_FILE, // control flags
"http://xxxx/demo.dll", // remote dll url, if loading from remote
NULL, // dll buffer to load from if loading from memory
0, // dll size if loading from memory
"Demo" // dll name if loaded from memory and remote
);
Build && Test
Environmental requirements
- libcurl
Install from vcpkg:and set vcpkg->Use Static Libraries
.\vcpkg install curl:x64-windows-static
YES
Build it :)
Test
I made a test dll named demo.dll.
It has a export function named Demo and just pop a dialog.
use Python3
start a server:
python -m http.server 8000
url maybe like http://127.0.0.1:8000/demo.dll
use url to replace http://xxxx/demo.dll
Run:
rundll32.exe SharkLoadLibrary.dll,calc