CODE: char strFileName[MAX_PATH];
GetModuleFileName(NULL, strFileName, sizeof(strFileName));
FILE *pFile =fopen(strFileName,"r");
char *pBuf;
fseek(pFile,0,SEEK_END);
int len =ftell(pFile); pBuf =new char [len+1];
fseek(pFile, 0, SEEK_SET);
fread(pBuf,1,len,pFile);
pBuf[len] =0;
fclose(pFile);
FILE *pFile1 =fopen("c:\\1.exe","w");
fwrite(pBuf,1,len,pFile1);
fclose(pFile1);
MessageBox(NULL,"Test",NULL,NULL);创建在C:的1.exe 运行不了 运行了出线黑窗口 就像dos命令符 那样 不过字节数一样啊不知错在哪里了呢 我这程序的意思是: 读取当前程序 创建C:\1.EXE 往里面写入读取到得内容
GetModuleFileName(NULL, strFileName, sizeof(strFileName));
FILE *pFile =fopen(strFileName,"r");
char *pBuf;
fseek(pFile,0,SEEK_END);
int len =ftell(pFile); pBuf =new char [len+1];
fseek(pFile, 0, SEEK_SET);
fread(pBuf,1,len,pFile);
pBuf[len] =0;
fclose(pFile);
FILE *pFile1 =fopen("c:\\1.exe","w");
fwrite(pBuf,1,len,pFile1);
fclose(pFile1);
MessageBox(NULL,"Test",NULL,NULL);创建在C:的1.exe 运行不了 运行了出线黑窗口 就像dos命令符 那样 不过字节数一样啊不知错在哪里了呢 我这程序的意思是: 读取当前程序 创建C:\1.EXE 往里面写入读取到得内容
....
FILE *pFile1 =fopen("c:\\1.exe","wb");
然后运行的时候1.exe先改个名字
FILE *pFile1 =fopen("c:\\1.exe","wb");
w 打开只写文件,若文件存在则文件长度清为0,即该文件内容会消失。若文件不存在则建立该文件。 改成a+试试
FILE *pFile1 =fopen("c:\\1.exe","a+");