mirror of
https://github.com/acidicoala/SmokeAPI.git
synced 2025-12-05 21:15:39 -05:00
Added winmm.dll for self-injection
This commit is contained in:
@@ -117,6 +117,13 @@ if(WIN32)
|
||||
INPUT_SOURCES_DIR ""
|
||||
DLL_FILES_GLOB "C:/Windows/System32/version.dll"
|
||||
)
|
||||
configure_linker_exports(
|
||||
TARGET SmokeAPI
|
||||
HEADER_NAME "linker_exports_for_winmm.h"
|
||||
FORWARDED_DLL "C:/Windows/System32/winmm.dll"
|
||||
INPUT_SOURCES_DIR ""
|
||||
DLL_FILES_GLOB "C:/Windows/System32/winmm.dll"
|
||||
)
|
||||
else()
|
||||
# configure_linker_exports(
|
||||
# TARGET SmokeAPI
|
||||
|
||||
2
KoalaBox
2
KoalaBox
Submodule KoalaBox updated: a2838977f0...017dfda8db
14
README.md
14
README.md
@@ -83,20 +83,20 @@ If that didn't work, refer to the _Troubleshooting_ section below.
|
||||
|
||||
- Download the [latest SmokeAPI release zip].
|
||||
- From this downloaded zip extract `smoke_api32.dll` or `smoke_api64.dll`, depending on a game's bitness.
|
||||
- Rename the unzipped DLL to `version.dll`.
|
||||
- Place this `version.dll` next to the game's `.exe` file.
|
||||
- Rename the unzipped DLL to `version.dll` or `winmm.dll`.
|
||||
- Place this `version.dll` or `winmm.dll` next to the game's `.exe` file.
|
||||
|
||||
#### 🪝 Hook mode with Koaloader
|
||||
|
||||
If a game doesn't load
|
||||
`version.dll`, you can use an alternative injector to load SmokeAPI into the game process.
|
||||
If a game doesn't load `version.dll` or `winmm.dll`, you can use an alternative injector to load
|
||||
SmokeAPI into the game process.
|
||||
One such injector is [Koaloader], which supports different DLLs that a typical game might load.
|
||||
For example, assuming that the game loads `winmm.dll`:
|
||||
For example, assuming that the game loads `d3d11.dll`:
|
||||
|
||||
- Install Koaloader:
|
||||
- Download the [latest Koaloader release zip].
|
||||
- From this downloaded zip extract `winmm.dll` from `winmm-32` or `winmm-64`, depending on a game's bitness.
|
||||
- Place `winmm.dll` next to the game's `.exe` file.
|
||||
- From this downloaded zip extract `d3d11.dll` from `d3d11-32` or `d3d11-64`, depending on a game's bitness.
|
||||
- Place `d3d11.dll` next to the game's `.exe` file.
|
||||
- Install SmokeAPI
|
||||
- Download the [latest SmokeAPI release zip].
|
||||
- From this downloaded zip extract `smoke_api32.dll` or `smoke_api64.dll`, depending on a game's bitness.
|
||||
|
||||
@@ -2,9 +2,10 @@
|
||||
|
||||
#include "smoke_api/smoke_api.hpp"
|
||||
|
||||
// This header will be populated at build time
|
||||
// These headers will be populated at build time
|
||||
#include "linker_exports_for_steam_api.h"
|
||||
#include "linker_exports_for_version.h"
|
||||
#include "linker_exports_for_winmm.h"
|
||||
|
||||
DLL_MAIN(void* handle, const uint32_t reason, void*) {
|
||||
if(reason == DLL_PROCESS_ATTACH) {
|
||||
|
||||
@@ -14,7 +14,8 @@
|
||||
"forum_topic_url": "https://cs.rin.ru/forum/viewtopic.php?p=2597932#p2597932",
|
||||
"dlc_database": "SteamDB",
|
||||
"dlc_database_url": "https://steamdb.info/",
|
||||
"json_schema_path": "./res/SmokeAPI.schema.json"
|
||||
"json_schema_path": "./res/SmokeAPI.schema.json",
|
||||
"self_inject_dll": "`version.dll` or `winmm.dll`"
|
||||
},
|
||||
"tasks": [
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user