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

Программа для просмотра заголовков - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ че-то случилось с компилятором http://www.cyberforum.ru/cpp-beginners/thread326468.html
"NEW.exe": Загружено: "C:\Users\ZETSU\Documents\Visual Studio 2010\Projects\NEW1\Debug\NEW.exe", Символы загружены. "NEW.exe": Загружено: "C:\Windows\System32\ntdll.dll", Невозможно найти или открыть файл PDB "NEW.exe": Загружено: "C:\Windows\System32\kernel32.dll", Невозможно найти или открыть файл PDB "NEW.exe": Загружено: "C:\Windows\System32\KernelBase.dll", Невозможно найти или открыть...
C++ Пиши прогу которая вытаскивает email адреса из файла. Добрый день. Хочу реализовать программку в c++ builder, которая вытаскивает из txt файла все email адреса и записывает их в отдельный файл. Может кто-то подкинет мне кусочек кода который правильно ищет @ пробел до и пробел после(тобишь сам email) в тексте. Выглядит как попрошайничество, но я вреале перерыл много материала в интернете и ничего дельного не нашел. http://www.cyberforum.ru/cpp-beginners/thread326443.html
C++ Fstream не сохраняются изменения в файле
Написал вот небольшую программку, но почему-то функции не вносят изменения в исходный файл хотя я и указал что надо принимать файл по ссылке, а не копировать его. Где же я сделал ошибку? #include <fstream> #include <iostream> #include <iomanip> #include <string> #include "ClientData.h" using namespace std; void update(fstream&, fstream&);
C++ Теряется значение в переменной
Всем привет...думаю всем не важно что надо сдавать мне и так далее :D В общем прошу помощи...есть функция, возвращающая номер столбца с самой длинной серией. Проблема в том что походу значение переменной где то теряется...а я не могу понять где :cry: Привожу код и текст ошибки (Программа компилиться, но выкидывает с error'ом когда должна вывести номер столбца) Функция: int poisk2 (int A,...
C++ Распределение памяти http://www.cyberforum.ru/cpp-beginners/thread326407.html
При загрузки таблицы загружаются и пересчитываются формулы в ячейках. Скажите пожалуйста почему при размерах от 100*100(строка*столбец) до, примерно, 5000*100 график зависимости времени от размера растет линейно, а от 5000*100 до 10000*100 квадратичная? Заранее спасибо.
C++ Реализация стека FIFO и LIFO Собственно, если у кого-нить будет время посмотреть мои реализации FIFO и LIFO стеков, и высказать замечания, буду очень признателен =) Обычный FIFO стек, универсальный вроде как, вроде правильно с шаблонами разобрался: template <class T> class Stack { private: struct StackEl; StackEl *top; public: подробнее

Показать сообщение отдельно
xAtom
 Аватар для xAtom
910 / 735 / 60
Регистрация: 09.12.2010
Сообщений: 1,346
Записей в блоге: 1
27.06.2011, 15:02     Программа для просмотра заголовков
Вот тебе начиркал, покажу только чтения заголовка и всё.
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
#include <stdio.h>
#include <Windows.h>
#include <winnt.h>      // вдруг не объявлен в Windows.h
#include <time.h>
 
 
// здесь не все флаги сейчас ещё появились у меня в VC++ 6.0 только эти
void   type_subsystem(DWORD  flag) {
     switch( flag ) { 
    case IMAGE_SUBSYSTEM_UNKNOWN:
        puts("Неизвестная подсистема.");
        break;
    case IMAGE_SUBSYSTEM_NATIVE:
        puts("Нативная подсистема своя.");
        break;
    case IMAGE_SUBSYSTEM_WINDOWS_GUI:
        puts("Графический Windows GUI.");
        break;
    case IMAGE_SUBSYSTEM_WINDOWS_CUI:
        puts("Графический Windows CUI.");
        break;
    case IMAGE_SUBSYSTEM_OS2_CUI:
        puts("Тип подсистемы OS/2 CUI.");
        break;
    case IMAGE_SUBSYSTEM_POSIX_CUI:
        puts("Тип подсистемы POSIX CUI.");
        break;
    case IMAGE_SUBSYSTEM_WINDOWS_CE_GUI:
         puts("Мобильная Windows CE");
         break;
    default:
        printf("Неизвестный флаг подсистемы %u.\n", flag);
        break;
    }
}
 
 
// сборка для процессора
void   type_machine(DWORD  flag) {
    switch( flag )  {
    case  IMAGE_FILE_MACHINE_I386:
       puts("machine -  i386");
        break;
    case IMAGE_FILE_MACHINE_IA64:
       puts("Machine - IA64");
        break;
/*  case  IMAGE_FILE_MACHINE_AMD64:   // если у тебя выше VC++ 2005 раскомментируй
       puts("Machine - AMD64");*/
    default:
      printf("Machine other flag = %d\n", flag);
        break;
    }
}
 
 
 
void main ()
{
    SetConsoleOutputCP(1251);
 
    DWORD bread = 0u;
 
    IMAGE_DOS_HEADER   header;
    ZeroMemory(&header, sizeof(IMAGE_DOS_HEADER));
    IMAGE_NT_HEADERS    nt;
    ZeroMemory(&nt, sizeof(IMAGE_NT_HEADERS));
 
 
           HANDLE   image = CreateFile("X:\\application.exe", GENERIC_READ, FILE_SHARE_READ, 
                                                  NULL,  OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
    if(image == INVALID_HANDLE_VALUE) {
        puts("Не могу открыть файл !!!");
        exit(1);
    }
 
           // читаем загаловок PE-файла
    ReadFile(image, (LPVOID)&header, sizeof(IMAGE_DOS_HEADER), &bread, NULL);
    
    if( header.e_magic != IMAGE_DOS_SIGNATURE) {
        puts("Файл не является исполнительным PE-exe  без подписи !");
        CloseHandle(image);
        exit(1);
    }
 
           // считываем заглушку
           DWORD  dos_stub[16];
    ZeroMemory(dos_stub, sizeof(dos_stub));  
    ReadFile(image, (LPVOID)dos_stub, sizeof(dos_stub), &bread, NULL);
 
    SetFilePointer(image, header.e_lfanew, NULL, FILE_BEGIN);
             
           // читаем NT-заголовок
    ReadFile(image, (LPVOID)&nt, sizeof(IMAGE_NT_HEADERS), &bread, NULL);
    CloseHandle(image);
 
             
    if(nt.Signature  != IMAGE_NT_SIGNATURE) {
           puts("Неизвестная сигнатура-подпись !!!");
           exit(1);
    }
 
    type_subsystem( nt.OptionalHeader.Subsystem);
    type_machine( nt.FileHeader.Machine );
    
           // время сборки
    time_t  td  = (long) nt.FileHeader.TimeDateStamp;
    struct  tm*   dt;
           dt           = localtime(&td);
           printf ("date lmake code = %s\n", asctime(dt));
  
 
    puts("Дамп DOS заглушки:");
    for(int i = 0; i < sizeof(dos_stub) / sizeof(DWORD); i++) {
        printf("%X\t%X\t%X\t%X\t\n", dos_stub[i] >> 24 & 0xFF,  
            dos_stub[i] >> 16 & 0xFF, dos_stub[i] >> 8 & 0xFF,  
            dos_stub[i]  & 0xFF);
            }
 
            // можно дальше  найти секции кода, ресурсов и т.п.
 
      getchar();
 
}
 
Текущее время: 06:32. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru