标题:关于C++fread和fwrite问题,求帮助~!
取消只看楼主
q272236218
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2017-5-5
结帖率:100%
已结贴  问题点数:20 回复次数:5 
关于C++fread和fwrite问题,求帮助~!
#pragma once
#define  _CRT_SECURE_NO_WARNINGS
#include<Windows.h>
#include<iostream>
#define FILE_ADDRESS "F:\ipmsg1.exe"
using namespace std;
int FILE_SIZE=0;
static DWORD FILE_open(LPSTR FILE_lujing, LPVOID *FILE_BUFFER)
{
   
   
    FILE *NAME = NULL;
    LPVOID TEP_FILEBUFFER = NULL;
    NAME=fopen(FILE_lujing, "rb");
    if (!NAME)
    {
        cout << "打开文件失败" << endl;
        return 0;
    }
    fseek(NAME, 0, SEEK_END);//设置指针
    FILE_SIZE = ftell(NAME);
    fseek(NAME, 0, SEEK_SET);//设置指针
    TEP_FILEBUFFER = malloc(FILE_SIZE);
   
    if (!TEP_FILEBUFFER)
    {
        cout << "分配内存空间失败" << endl;
        fclose(NAME);
        return 0;
        
    }
   
    size_t n=fread(TEP_FILEBUFFER, 1, FILE_SIZE, NAME);
    FILE* FILE_NEW = fopen(FILE_ADDRESS, "wt+");
   
    size_t y=fwrite(TEP_FILEBUFFER, 1, FILE_SIZE, FILE_NEW);

为什么读取时候和写出时文件大小不一样。用UE看有字节错位的问题,怎么回事 求大大相助
搜索更多相关主题的帖子: include return 
2017-05-05 10:28
q272236218
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2017-5-5
得分:0 
回复 2楼 rjsp
"F:\ipmsg1.exe"是宏定义没毛病啊。
2017-05-05 11:08
q272236218
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2017-5-5
得分:0 
回复 2楼 rjsp
大大能加个QQ详细问一下你么 = =
2017-05-05 11:14
q272236218
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2017-5-5
得分:0 
回复 2楼 rjsp
大大、按照你的方式能成功创建一个一样大的PE文件了。但是为什么跑不起来呢。用PETOOL看两个文件的PE结构一样,为什么我创建的不能运行呢。点击以后没有反应
2017-05-05 11:24
q272236218
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2017-5-5
得分:0 
回复 6楼 rjsp
都改了 也能生成  现在就是卡在不能运行,确实/i这里有问题。之前也提示过。初学者不懂。编译器也让过了。所以就没当回事。
2017-05-05 12:19
q272236218
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2017-5-5
得分:0 
回复 6楼 rjsp
程序的整个过程是读取文件到FILEBUFFER 内存区。然后模拟程序在运行时的状态进行拉伸。然后用算法将拉伸以后的程序还原回硬盘时的状态。这个过程以后文件的大小没变。并且能用PETOOL打开。证明其是符合PE文件的结构。不知道我这个逻辑对不对呢。但是打不开实在是想不通。论坛上的代码按照您说的修改之后可以生成了 也能运行。但是整个过程以后是无法运行的。老师您觉得问题可能出在哪呢
2017-05-05 12:26



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-476714-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.294432 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved