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 ""
|
INPUT_SOURCES_DIR ""
|
||||||
DLL_FILES_GLOB "C:/Windows/System32/version.dll"
|
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()
|
else()
|
||||||
# configure_linker_exports(
|
# configure_linker_exports(
|
||||||
# TARGET SmokeAPI
|
# 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].
|
- Download the [latest SmokeAPI release zip].
|
||||||
- From this downloaded zip extract `smoke_api32.dll` or `smoke_api64.dll`, depending on a game's bitness.
|
- 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`.
|
- Rename the unzipped DLL to `version.dll` or `winmm.dll`.
|
||||||
- Place this `version.dll` next to the game's `.exe` file.
|
- Place this `version.dll` or `winmm.dll` next to the game's `.exe` file.
|
||||||
|
|
||||||
#### 🪝 Hook mode with Koaloader
|
#### 🪝 Hook mode with Koaloader
|
||||||
|
|
||||||
If a game doesn't load
|
If a game doesn't load `version.dll` or `winmm.dll`, you can use an alternative injector to load
|
||||||
`version.dll`, you can use an alternative injector to load SmokeAPI into the game process.
|
SmokeAPI into the game process.
|
||||||
One such injector is [Koaloader], which supports different DLLs that a typical game might load.
|
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:
|
- Install Koaloader:
|
||||||
- Download the [latest Koaloader release zip].
|
- 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.
|
- From this downloaded zip extract `d3d11.dll` from `d3d11-32` or `d3d11-64`, depending on a game's bitness.
|
||||||
- Place `winmm.dll` next to the game's `.exe` file.
|
- Place `d3d11.dll` next to the game's `.exe` file.
|
||||||
- Install SmokeAPI
|
- Install SmokeAPI
|
||||||
- Download the [latest SmokeAPI release zip].
|
- Download the [latest SmokeAPI release zip].
|
||||||
- From this downloaded zip extract `smoke_api32.dll` or `smoke_api64.dll`, depending on a game's bitness.
|
- 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"
|
#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_steam_api.h"
|
||||||
#include "linker_exports_for_version.h"
|
#include "linker_exports_for_version.h"
|
||||||
|
#include "linker_exports_for_winmm.h"
|
||||||
|
|
||||||
DLL_MAIN(void* handle, const uint32_t reason, void*) {
|
DLL_MAIN(void* handle, const uint32_t reason, void*) {
|
||||||
if(reason == DLL_PROCESS_ATTACH) {
|
if(reason == DLL_PROCESS_ATTACH) {
|
||||||
|
|||||||
@@ -14,7 +14,8 @@
|
|||||||
"forum_topic_url": "https://cs.rin.ru/forum/viewtopic.php?p=2597932#p2597932",
|
"forum_topic_url": "https://cs.rin.ru/forum/viewtopic.php?p=2597932#p2597932",
|
||||||
"dlc_database": "SteamDB",
|
"dlc_database": "SteamDB",
|
||||||
"dlc_database_url": "https://steamdb.info/",
|
"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": [
|
"tasks": [
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user