Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Программа работы с файлом, отображенным в память - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Почему не работает наследование? http://www.cyberforum.ru/cpp-beginners/thread1139838.html
Пытаюсь присвоить полям производного класса поля базового,но выводит мусор. В чем проблема? #include "stdafx.h" #include <iostream> #include <cstring> #include <cstdio> #include <cmath> ...
C++ Error C3861 delete_list идентификатор не найден Помогите разобраться с ошибкой, ругается на delete_list(&tail); #include "stdafx.h" #include <iostream> using namespace std; #include <conio.h> struct list2 { char name_nach; char... http://www.cyberforum.ru/cpp-beginners/thread1139835.html
C++ Error C2440 невозможно преобразовать char в char
двунаправленный список помогите разобраться с ошибкой #include "stdafx.h" #include <iostream> using namespace std; #include <conio.h> struct list2 { char name_nach;
Написать программу мониторинга объявлений с сайта ati.su C++
Здравствуйте! я хочу попробовать написать программу мониторинга объявлений с сайта ati.su с внедрением antigate . Подскажите пожалуйста как и в чем это лучше исполнить. В программировании по нулям.
C++ Передать инициализированный std::vector конструктору базового класса http://www.cyberforum.ru/cpp-beginners/thread1139814.html
В общем появилась одна проблема. Никак не пойму как можно сделать. В общем дело такое: 1) Есть класс Coord, который содержит координаты. #ifndef COORD_H #define COORD_H class Coord { ...
C++ Заданы три числа D, M, Y, которые обозначают число, месяц и год. Найти номер N Помогите решить задачу Заданы три числа D, M, Y, которые обозначают число, месяц и год. Найти номер N этого дня с начала года (високосные года – это те, у которых номер делится на 400, и те, у... подробнее

Показать сообщение отдельно
max10messi
0 / 0 / 0
Регистрация: 13.03.2013
Сообщений: 15

Программа работы с файлом, отображенным в память - C++

05.04.2014, 20:54. Просмотров 420. Ответов 3
Метки (Все метки)

у меня есть проблемка, дана программа в методичке, нужно откомпилировать, я питался что-то сделать, но выскакует одна ошибка, прошу вашей помощи!!!Пожалуйста!
вот методичка(лаба 4) и скрин ошибки.
Sistemnoe_programmirovanie_-_Laboratornye_rabot.pdf
Программа работы с файлом, отображенным в память
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
//#include "EvryThng.h"
//#include "Everything.h"
 
 
 
#define BUF_SIZE 160
#define rmaxf1 40
#define rmaxf2 10
#include <process.h>
#include <stdarg.h>
#include <string.h>
#include <windows.h>
#include <tchar.h>
#include <stdio.h>
#include <io.h>
#include <stdlib.h>
#include <search.h>
#define WIN32_LEAN_AND_MEAN 
#define NOATOM 
#define NOCLIPBOARD 
#define NOCOMM 
#define NOCTLMGR 
#define NOCOLOR 
#define NODEFERWINDOWPOS 
#define NODESKTOP 
#define NODRAWTEXT 
#define NOEXTAPI 
#define NOGDICAPMASKS 
#define NOHELP 
#define NOICONS 
#define NOTIME 
#define NOIMM 
#define NOKANJI 
#define NOKERNEL 
#define NOKEYSTATES 
#define NOMCX 
#define NOMEMMGR 
#define NOMENUS 
#define NOMETAFILE 
#define NOMSG 
#define NONCMESSAGE 
#define NOPROFILER 
#define NORASTEROPS 
#define NORESOURCE 
#define NOSCROLL 
#define NOSERVICE 
#define NOSHOWWINDOW 
#define NOSOUND 
#define NOSYSCOMMANDS 
#define NOSYSMETRICS 
#define NOSYSPARAMS 
#define NOTEXTMETRIC 
#define NOVIRTUALKEYCODES 
#define NOWH 
#define NOWINDOWSTATION 
#define NOWINMESSAGES 
#define NOWINOFFSETS  
#define NOWINSTYLES  
#define OEMRESOURCE 
#undef UNICODE 
#ifdef UNICODE 
#define _UNICODE 
#endif
#ifndef UNICODE
#undef _UNICODE 
#endif
#define _STATICLIB
#define UTILITY_EXPORTS
#ifdef UTILITY_EXPORTS
#define LIBSPEC _declspec (dllexport)
#else
#define LIBSPEC _declspec (dllimport)
#endif
#define EMPTY _T ("")
#define YES _T ("y")
#define NO _T ("n")
#define CR OxOD
#define LF OxOA
#define TSIZE sizeof (TCHAR) 
/* Пределы и константы. */
#define TYPE_FILE 1   
#define TYPE_DIR 2
#define TYPE_DOT 3
#define MAX_OPTIONS 20 
/* Максимальное кол-во опций командной строки. */
#define MAX_ARG 1000 
/* Максимальное кол-во параметров командной строки. */
#define MAX_COMMAND_LINE MAX_PATH+50 
/* Максимальный размер командной строки. */
/* Функции общего применения. */
LIBSPEC BOOL ConsolePrompt (LPCTSTR, LPTSTR, DWORD, BOOL); 
LIBSPEC BOOL PrintStrings (HANDLE, ...);
LIBSPEC BOOL PrintMsg (HANDLE, LPCTSTR);
LIBSPEC VOID ReportError (LPCTSTR, DWORD, BOOL);
 
 
 
void KCompare (CHAR , CHAR , int);
void KCompare ( CHAR string1[rmaxf1], CHAR string2[rmaxf2], int KEY)
{
    //strcmp
    char tmp[20]; int result;
    result=strncmp(( CHAR*) string1, ( CHAR*) string2, KEY);
    if (result==0)
    { 
        strcpy_s( tmp, "equal to" );
        printf( "Result:\t\tString 1 is %s string 2\n\n", tmp );
    }
    else
    { 
        strcpy_s( tmp, "noequal to" );
        printf( "Result:\t\tString 1 is %s string 2\n\n", tmp );
    }
}
    int _tmain (int argc, LPCTSTR argv []) 
    {
        HANDLE hFile, hFile2, hMap;
        LPVOID  pFile;
        CHAR string1[rmaxf1], string2[rmaxf2]; 
        CHAR Buffer1[BUF_SIZE], Buffer2[BUF_SIZE];
        DWORD FsLow, nf2; 
        int i, j, k, KEY;
        BOOL f2;
        LPCTSTR pF;
        hFile = CreateFile (argv[1], GENERIC_READ, 0, NULL,OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
        FsLow = GetFileSize (hFile, NULL); 
        printf("Fs=%d\n",(int)FsLow);
        hMap = CreateFileMapping (hFile, NULL, PAGE_READONLY,0, 0, NULL); 
        pFile = MapViewOfFile (hMap, FILE_MAP_READ, 0, 0, 0);
        pF=(LPCTSTR)pFile;
        for (i=0; i< (int)FsLow; i++)
        {
            Buffer1[i]=*pF;
            pF++;
        }
        for (i=0; i< (int)FsLow; i++)
        printf("%c",Buffer1[i]);
        printf("\n");
        hFile2 = CreateFile (argv[2], GENERIC_READ, 0, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL); 
        f2=ReadFile(hFile2, Buffer2, BUF_SIZE, &nf2, NULL);
        KEY=GetFileSize (hFile2, NULL); 
        printf("KEY=%d\n", (int)KEY);
        for (i=0; i< (int)KEY; i++)
        printf("%c",Buffer2[i]);
        printf("\n");
        for (i=0; i< (int)KEY; i++)
        string2[i]=Buffer2[i];
        k=0;
        do
        {
            i=k;
            do
        {
        for (j=0; j<(int)KEY;j++)
        {
            string1[j]=Buffer1[j+i];
            printf("%c",string1[j]);
        }
        printf("\n");
        getchar();
        KCompare(string1, string2, (int)KEY);
        i=i+KEY;
        }
        while (i<(int)FsLow-(int)KEY+1);
        k=k+1;
    }
    while (k<(int)FsLow-(int)KEY+1);
    /* Выводим исходный файл. */
    _tprintf(_T("%s"),pFile); 
    UnmapViewOfFile (pFile); 
    CloseHandle (hMap); 
    CloseHandle (hFile);  
    CloseHandle (hFile2);  
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru