合成.c
来自「一个用ZIP算法实现的自解压程序制作」· C语言 代码 · 共 65 行
C
65 行
#include <stdio.h>
#include <stdlib.h>
#include "name_def.h"
typedef unsigned int uint;
uint i = 0;
uint t = 0;
uint dat_len = 0;
uint rec_len = 0;
uint dll_len = 0;
FILE *fp;
FILE *wt;
char *bf;
int main(){
system ("@echo off");
system (_COL);
system ("cmd.exe /c if exist Target.exe del Target.exe");
system ("copy _fuck_template.exe Target.exe");
wt = fopen (_LEN, "wb");
//Copy template.exe
//Get rec_len
fp = fopen (_REC, "rb");
fseek (fp, 0, 2);
rec_len = ftell (fp);
fclose (fp);
//Get dat_len
fp = fopen (_DAT, "rb");
fseek (fp, 0, 2);
dat_len = ftell (fp);
fclose (fp);
//Get dll_len
fp = fopen (_DLL, "rb");
fseek (fp, 0, 2);
dll_len = ftell (fp);
fclose (fp);
/*============================*/
printf ("Date segment start from:%d\n", ftell(wt));
/*============================*/
/*<-------------->*/
fwrite (&rec_len, sizeof(uint), 1, wt);
fwrite (&dat_len, sizeof(uint), 1, wt);
fwrite (&dll_len, sizeof(uint), 1, wt);
/*<-------------->*/
printf ("<---------------------------->\n"
"\trec_len: %d\n"
"\tdat_len: %d\n"
"\tdll_len: %d\n"
"<---------------------------->\n",
rec_len, dat_len, dll_len
);
/*<-------------->*/
fclose (wt);
system ("copy /b Target.exe+_fuck_len_rec+_fuck_rec+_fuck_dat+_fuck_zip.dll");
system ("del _fuck_len_rec");
system ("del _fuck_dat");
system ("del _fuck_rec");
return 0;
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?