【发布时间】:2013-11-06 05:26:15
【问题描述】:
我有这个来自互联网的隐形注射器来源
所以这个程序用于将 .dll 注入到 .exe
这个程序是有人制作的,用于网络游戏作弊
但是我需要在我的私人服务器游戏中使用这个程序来告诉游戏客户端.exe服务器IP,它存储在一个dll文件中..
问题是我不想让玩家直接执行这个程序,但他们需要先运行游戏启动器来打补丁..
所以我需要输入一些秘密参数参数来阻止玩家直接执行..
我对c++一无所知
我只知道需要使用main(int argc, char *argv[])
我试着写这样的东西
int main(int argc, char* argv[]){
stringstream sparam;
string param;
sparam << argv[1];
sparam >> param;
if(argc < 1){
MessageBox(0, "Do not run this program directly, use the Game Launcher!", "Error", MB_ICONEXCLAMATION);
close;
}
if(param != "somesecretargument"){
MessageBox(0, "Do not run this program directly, use the Game Launcher!", "Error", MB_ICONEXCLAMATION);
close;
}
return 0;
}
上面的代码工作正常,但其余代码不会执行,它只是做参数验证,然后程序关闭..
这是cpp和头文件Source File
【问题讨论】:
-
代码的“其余部分”是什么?
-
您应该在索引到 argv 之前检查是否有足够的参数传递。
-
很容易获得有关您的秘密参数的信息(例如,通过 ProcessExplorer 工具)。所以这不是解决方案。
-
@Aniket 我已经上传了源文件,剩下的代码就是除了 main(int argc, char* argv[]) 之外的所有代码,所以它只是验证参数然后关闭程序。 .不执行游戏exe
标签: c++