Ну там все написано. Убей .pch — компилятор сам его сделает нужной версии.
Virpil
02.06.2010 в 09:59
Ок, спробую дома. Не гуру Было еще такое предложение:
переименуйте файл в .cpp или отключите в настройках компилятора "Use precompiled header"
Mihail Stepanov
02.06.2010 в 12:44
Ок, спробую дома. Не гуру Было еще такое предложение:
переименуйте файл в .cpp или отключите в настройках компилятора "Use precompiled header"
Дима, раскажи что задумал. Широкой аудитории тоже будет интересно 🙂
Virpil
02.06.2010 в 16:59
Дима, раскажи что задумал.
OFF <Кругозор Миш расширяю> OFF
================================
Теперь по существу: После переименования и отключения опции «Use precompiled header» стала выдавать два предупреждения и ошибку. ИМХО, похоже ссылается на ресурс. Где ошибка?
------ Построение начато: проект: PKP, Конфигурация: Debug Win32 ------
Компиляция...
stdafx.cpp
Компиляция...
PKP.cpp
PKP.Attitude.cc
c:documents and settingsадминистраторрабочий столsample_c++pkp.attitude.cc(4) : warning C4627: #include "PKP.Attitude.cpp": пропущен при поиске использования предкомпилированного заголовка
Добавление директивы в "stdafx.h" или перестройка предкомпилированного заголовка
c:documents and settingsадминистраторрабочий столsample_c++pkp.attitude.cc(48) : warning C4603: PITCH_LIMIT: макрос не определен или определение изменилось после использования предкомпилированного заголовка
Добавление макроопределения в предкомпилированный заголовок вместо определения его здесь
c:documents and settingsадминистраторрабочий столsample_c++pkp.attitude.cc(110): использование предкомпилированного заголовка
Создание кода...
Компиляция...
dllmain.cpp
Компиляция ресурсов...
Microsoft (R) Windows (R) Resource Compiler Version 6.1.6723.1
Copyright (C) Microsoft Corporation. All rights reserved.
......sample_c++PKP.h(30) : fatal error RC1004: unexpected end of file found
Журнал построения был сохранен в "file://c:Documents and SettingsАдминистраторРабочий столProject1PKPPKPDebugBuildLog.htm"
PKP - ошибок 1, предупреждений 2
========== Построение: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ==========
4-я, 48-я строка кода и дерево на скринах. Проект Win32 DLL с экспортом символов.
Прикрепленные изображения
Mihail Stepanov
02.06.2010 в 17:42
OFF <Кругозор Миш расширяю> OFF
================================
c:documents and settingsадминистраторрабочий столsample_c++pkp.attitude.cc(48) : warning C4603: PITCH_LIMIT: макрос не определен или определение изменилось после
Слушай, Дим. Я конечно не знаю, почему у тебя не клеится. Но кое что замечу. У меня в сценостроительстве не компилилось пару раз из за того, что всё хозяйство лежало в папке с длинными русскими именами. В результате компилятор что -то где-то не находил. Чтобы наверняка, кидай лучше в C:ISH_PRIB например, лучше без пробелов.
Virpil
03.06.2010 в 14:48
Не помогло. Знатоки, что скажете? Сегодня при компиле VS2008++ выдал вот этот перл:
------ Построение начато: проект: PKP, Конфигурация: Debug Win32 ------
Компиляция ресурсов...
Microsoft (R) Windows (R) Resource Compiler Version 6.1.6723.1
Copyright (C) Microsoft Corporation. All rights reserved.
......Documents and Settings
Проект : error PRJ0002 : Результат ошибки 1 возвращен из "C:Program FilesMicrosoft SDKsWindowsv6.0Abinrc.exe".
Журнал построения был сохранен в "file://c:MY_GAUPKP_GAUPKPDebugBuildLog.htm"
PKP - ошибок 1, предупреждений 0
========== Построение: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ==========
MS Platform SDK for Windows Server 2003 SP1 на которую ссылается компиль, установлена отдельной прогой в Program Files, и шла кажись вместе с установкой VS2008++ с сервера MS. (могу ошибаться)
И общий: Где-нить описано как прально собрать DLL именно для использования ее симом?
Сообщение отредактировано Virpil: 03 June 2010 — 14:56
gosha-z
03.06.2010 в 15:43
Ну вот BuildLog и покажи, он для этого и пишется.
Virpil
03.06.2010 в 20:10
Не смог я восстановить тот проект, лог другой сейчас:
fatal error C1014: слишком много включаемых файлов: глубина = 1024
сюда смотрел?
ещё хотел добавить. тут в файлах лежит оверхед тамагочи с исходниками от anton_il, он тоже это всё писал в студии 2К8 насколько я знаю. качни, сделай копию и выкини все его файла оттуда и вставь свои. будешь использовать как образец создания проекта в студии для написания гауг.
а вообще весь код проекта сюда. там много косяков именно в самих файлах по ходу, не только в настройках проекта. по выводу компилятора трудно колдовать.
Сообщение отредактировано icebear: 04 June 2010 — 11:33
Max999
05.06.2010 в 11:18
Не помогло. Знатоки, что скажете? Сегодня при компиле VS2008++ выдал вот этот перл: И общий: Где-нить описано как прально собрать DLL именно для использования ее симом?
Может, Вам из консоли попробовать компилировать? С помощью make-файла?
serg_p
05.06.2010 в 11:38
Может, Вам из консоли попробовать компилировать? С помощью make-файла?
Я бы все же посоветовал затратить столько времени, сколько нужно для того, что бы въехать в среду Visual C++ и в то, как строятся, а затем компилятся и отлаживаются C/C++ программы. Я, например, не представляю, как можно что-то делать серьезно хотя бы без отладки. Так же достаточно явственно помню все неудобства, связанные с неиспользованием раздельной компиляции (Обычно начинающие приборостроители это делают наряду с тем, что для компиляции и сборки пользуются make-файлами, просто потому, что в примере в SDK используется только make-файл).
Т.е. стоит сначала освоить инструмент, хоть как-то, а уж потом пробовать клепать приборы. Ну и естественно, так же предварительно стоит приобрести, хоть какие-то инженерные знания по изготавливаемым приборам. А то получится, как часто получается в случае с XML приборами (не во всех случаях), по причине невозможности программирования на этом языке сложной логики. Просто анимированные картинки, пусть даже и красивые.
Сообщение отредактировано serg_p: 05 June 2010 — 12:01
Virpil
05.06.2010 в 12:23
а вообще весь код проекта сюда. там много косяков именно в самих файлах по ходу, не только в настройках проекта. по выводу компилятора трудно колдовать.
Некомпилированный шаблон кода проекта студии прицепил в архив ниже. Заранее спасибо за корректировку.
Может, Вам из консоли попробовать компилировать? С помощью make-файла?
Я новичек в приборостроении. Хотел воспроизвести шаблон SDK FS9, в части касаемой только ихнего авиагоризонта для Цес. Здесь писалось о том, что при комиляции из студии make-file можно «отпустить», а постигнуть на этапе хочется пока именно среду.
Дим, это просто заготовка dll.
До gau ей еще далеко.
В свое время я делал пример для Андрея акка icebear.
Не знаю на сколько он помог ему.
Посмотри, может быть поможет в чем-то разобраться.
Сообщение отредактировано serg_p: 05 June 2010 — 12:45
Virpil
05.06.2010 в 13:20
это просто заготовка dll.
Есть и сама сборка. В ней файлы только того, что предложил MS. Она получилась объемной и авсим ее не подцепил. Я удалил из проекта файл типа VC++ Intellisense Database и сжал максимально. Попробую разобраться в твоем проекте, Серег. Пасиб
Хехе, а вот и причина ошибки «fatal error C1014: слишком много включаемых файлов: глубина = 1024»
// PKP.cpp
// (С) All right reserved. 2100
#include "stdafx.h"
#include "PKP.cpp"
Файл инклудит сам себя. Скорее всего там должно было быть
#include "PKP.h"
Нужно понять одно правило. Файлы с расширением c/cpp — тело, собственно реализация, код. Файлы с расширением h являются в первую очередь интерфейсом, механизмом, предоставляющим возможность вызывать функции, которые реализованы (запрограммированы) в c/cpp файле. Каждый c/cpp файл компилится в отдельный obj файл. Собственно раздельная компиляция. Изменения в одном c/cpp файле не приводят к перекомпиляции других c/cpp файлов. Все obj файлы собираются в процессе компоновки уже конкретно в exe, dll и т.д.
P.S. Небольшое замечание по раздельной компиляции. Так как сделано в примере из SDK ни в коем случае не приводит к раздельной компиляции отдельных С-файлов. Когда один или несколько c/cpp файлов включаются в другой c/cpp файл через #include — для компилятора это выглядит, как один c/cpp файл и компилит он все это в один obj-файл. Т.е. здесь нет никакой раздельной компиляции. Это ничего, когда файлов наберется штук 5, а когда их за 100 — это просто ужос.
Сообщение отредактировано serg_p: 06 June 2010 — 11:03
Virpil
05.06.2010 в 20:35
В свое время я делал пример для Андрея акка icebear. Не знаю на сколько он помог ему. Посмотри, может быть поможет в чем-то разобраться.
Сереж, собрал твой пример, и подправил свой. Компиль стал выдавать одинаковую ошибку для обоих проектов ссылаясь в .cpp-файлах на 4590-ю строку «головного» GAUGE.H. Только для твоего ошибка повторяется 4 раза тк там 4-е .cpp. Приведу нынешний лог своего проекта:
<html>
<head>
<META HTTP-EQUIV="Content-Type" content="text/html; charset=utf-16">
</head>
<body>
<pre>
<table width=100% bgcolor=#CFCFE5><tr> <td> <font face=arial size=+3>
Журнал построения
</font></table><table width=* cellspacing=0 cellpadding=0><tr><td width=0 bgcolor=#EDEDF5> </td><td width=0 bgcolor=#FFFFFF> </td><td width=*><pre>
<h3>Построение начат: проект: SAMPLE, .Конфигурация: Debug|Win32</h3>
</pre></table><table width=100% bgcolor=#DFDFE5><tr><td><font face=arial size=+2>
Командные строки
</font></table><table width=* cellspacing=0 cellpadding=0><tr><td width=0 bgcolor=#EDEDF5> </td><td width=0 bgcolor=#FFFFFF> </td><td width=*><pre>Создание временного файла "c:MY_GAUSAMPLE_11SAMPLEDebugRSP00000512002044.rsp" с содержимым
[
/Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_USRDLL" /D "SAMPLE_EXPORTS" /D "_WINDLL" /D "_UNICODE" /D "UNICODE" /Gm /EHsc /RTC1 /MDd /Yu"stdafx.h" /Fp"DebugSAMPLE.pch" /Fo"Debug\" /Fd"Debugvc90.pdb" /W3 /c /ZI /TP "......Documents and SettingsАдминистраторРабочий столgau_samplelogic.cpp"
"......Documents and SettingsАдминистраторРабочий столgau_samplegau_sample.cpp"
"......Documents and SettingsАдминистраторРабочий столgau_samplefuel.cpp"
"......Documents and SettingsАдминистраторРабочий столgau_samplecl_logic.cpp"
]
Создаю командную строку "cl.exe @c:MY_GAUSAMPLE_11SAMPLEDebugRSP00000512002044.rsp /nologo /errorReport:prompt"
Создание временного файла "c:MY_GAUSAMPLE_11SAMPLEDebugRSP00000612002044.rsp" с содержимым
[
/Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_USRDLL" /D "SAMPLE_EXPORTS" /D "_WINDLL" /D "_UNICODE" /D "UNICODE" /Gm /EHsc /RTC1 /MDd /Fo"Debug\" /Fd"Debugvc90.pdb" /W3 /c /ZI /TP .dllmain.cpp
]
Создаю командную строку "cl.exe @c:MY_GAUSAMPLE_11SAMPLEDebugRSP00000612002044.rsp /nologo /errorReport:prompt"
</pre></table><table width=100% bgcolor=#DFDFE5><tr><td><font face=arial size=+2>
Окно выходных данных
</font></table><table width=* cellspacing=0 cellpadding=0><tr><td width=0 bgcolor=#EDEDF5> </td><td width=0 bgcolor=#FFFFFF> </td><td width=*><pre>Компиляция...
cl_logic.cpp
c:documents and settingsадминистраторрабочий столgau_samplegauges.h(4590) : error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
fuel.cpp
c:documents and settingsадминистраторрабочий столgau_samplegauges.h(4590) : error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
gau_sample.cpp
c:documents and settingsадминистраторрабочий столgau_samplegauges.h(4590) : error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
logic.cpp
c:documents and settingsадминистраторрабочий столgau_samplegauges.h(4590) : error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
Создание кода...
</pre></table><table width=100% bgcolor=#DFDFE5><tr><td><font face=arial size=+2>
Результаты
</font></table><table width=* cellspacing=0 cellpadding=0><tr><td width=0 bgcolor=#EDEDF5> </td><td width=0 bgcolor=#FFFFFF> </td><td width=*><pre>Журнал построения был сохранен в "file://c:MY_GAUSAMPLE_11SAMPLEDebugBuildLog.htm"
SAMPLE - ошибок 4, предупреждений 0
</pre></table><table width=100% height=20 bgcolor=#CFCFE5><tr><td><font face=arial size=+2>
</font></table></body></html>
serg_p
05.06.2010 в 21:19
Ругается на 4590-ую строку в gauges.h.
gauges.h — это собственно основной файл API с симом. Писался он еще при царе Горохе. Старые компиляторы (пример изначально я делал в 2003-ей студии), спокойно подменяли пропущенный тип переменной или тип возвращаемого значения функцией, на тип int. Не помню уже, с какой версии VС компилятор перестал подставлять int вместо пропущенного типа и стал считать не указание типа ошибкой. В принципе правильно. Не указывать тип переменной или возвращаемого значения функцией, есть очень нехорошее дело. Вообще, небрежное обращение с типами данных, в определенной ситуации, может сыграть в последствии очень злую шутку. Хотя, если очень надо, то ошибку эту можно отключить.
Интересно, что у меня то все сейчас скомпилилось и студия у меня такая же, 2008-ая. Не пойму, наверное, после какого-то обновления экспресс VC, у меня компилятор стал лояльным к этой ошибке.
typedef int (*GAUGE_KEY_EVENT_HANDLER) (ID32 event, UINT32 evdata, PVOID userdata);
Здесь объявляется функциональный тип данных, т.е. тип — указатель на функцию с таким-то списком параметров и таким-то возвращаемым значением. В исходном варианте пропущен тип возвращаемого значения функции.
Сообщение отредактировано serg_p: 05 June 2010 — 22:01
Virpil
06.06.2010 в 16:43
Вобщем вернулся снова к посту #32. Error PRJ0002. Может снести к чертям эту платформу SDK ?
Сообщение отредактировано Virpil: 06 June 2010 — 16:45
serg_p
06.06.2010 в 16:55
Дим, здесь нужно точно понимать, что происходит.
Но опыта и знаний для этого слишком мало.
Форум не поможет тебе их приобрести.
Только книги и твоя задница.
И движение от простого к сложному.
Забудь пока про приборы.
(Если хочешь писать приборы на С)
Пройди для начала по какой-нибудь «мурзилке», которая учит писать проги на VC с полной проработкой примеров.
Поверь, на освоение C/C++ уходят годы.
Virpil
06.06.2010 в 17:58
И тут ты прав.
icebear
07.06.2010 в 11:14
Вобщем вернулся снова к посту #32. Error PRJ0002. Может снести к чертям эту платформу SDK ?
проблема снова в файле ресурсов (.rc), который мы ещё не видели кинь прямо сюда его код, он небольшой.
и ещё, добавлю от себя по поводу с/сpp и h файлов: файлы h по сути можно опускать, они для удобства (что бы не бегать по километровому исходнику в поисках декларации той или иной функции) или для работы с библиотеками, где реализация просто скрыта.
и ещё, может последние посты с проблемами ide переместить вот сюда http://www.avsim.su/…priborov-na-si/ ?
Сообщение отредактировано icebear: 07 June 2010 — 11:17
Люди, как можно на лету получить картинку с гаги? Т.е., массив пикселов типа DIB. Мне надо взять картинку с гаги (всё, что в текущий момент там нарисовано) и продублировать в файл, например.
но это ты доступишься до нижнего элемента в дереве, а вот будет-ли он полной картинкой — вопрос двадцать пятый. ещё одно замечание: hdc вроде можно достать только у тех, кто декларирован с флагом IMAGE_CREATE_DIBSECTION. возможно после декларации твои нули исчезнуть и появится буфер.
Сообщение отредактировано icebear: 28 November 2011 — 12:17
Дима, раскажи что задумал. Широкой аудитории тоже будет интересно 🙂
OFF <Кругозор Миш расширяю>
OFF
================================
Теперь по существу: После переименования и отключения опции «Use precompiled header» стала выдавать два предупреждения и ошибку. ИМХО, похоже ссылается на ресурс. Где ошибка?
------ Построение начато: проект: PKP, Конфигурация: Debug Win32 ------ Компиляция... stdafx.cpp Компиляция... PKP.cpp PKP.Attitude.cc c:documents and settingsадминистраторрабочий столsample_c++pkp.attitude.cc(4) : warning C4627: #include "PKP.Attitude.cpp": пропущен при поиске использования предкомпилированного заголовка Добавление директивы в "stdafx.h" или перестройка предкомпилированного заголовка c:documents and settingsадминистраторрабочий столsample_c++pkp.attitude.cc(48) : warning C4603: PITCH_LIMIT: макрос не определен или определение изменилось после использования предкомпилированного заголовка Добавление макроопределения в предкомпилированный заголовок вместо определения его здесь c:documents and settingsадминистраторрабочий столsample_c++pkp.attitude.cc(110): использование предкомпилированного заголовка Создание кода... Компиляция... dllmain.cpp Компиляция ресурсов... Microsoft (R) Windows (R) Resource Compiler Version 6.1.6723.1 Copyright (C) Microsoft Corporation. All rights reserved. ......sample_c++PKP.h(30) : fatal error RC1004: unexpected end of file found Журнал построения был сохранен в "file://c:Documents and SettingsАдминистраторРабочий столProject1PKPPKPDebugBuildLog.htm" PKP - ошибок 1, предупреждений 2 ========== Построение: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ==========4-я, 48-я строка кода и дерево на скринах. Проект Win32 DLL с экспортом символов.
Прикрепленные изображения
Слушай, Дим. Я конечно не знаю, почему у тебя не клеится. Но кое что замечу.
У меня в сценостроительстве не компилилось пару раз из за того, что всё хозяйство лежало в папке с длинными русскими именами.
В результате компилятор что -то где-то не находил.
Чтобы наверняка, кидай лучше в C:ISH_PRIB например, лучше без пробелов.
MS Platform SDK for Windows Server 2003 SP1 на которую ссылается компиль, установлена отдельной прогой в Program Files, и шла кажись вместе с установкой VS2008++ с сервера MS. (могу ошибаться)
И общий: Где-нить описано как прально собрать DLL именно для использования ее симом?
Сообщение отредактировано Virpil: 03 June 2010 — 14:56
сюда смотрел?
ещё хотел добавить. тут в файлах лежит оверхед тамагочи с исходниками от anton_il, он тоже это всё писал в студии 2К8 насколько я знаю. качни, сделай копию и выкини все его файла оттуда и вставь свои. будешь использовать как образец создания проекта в студии для написания гауг.
а вообще весь код проекта сюда. там много косяков именно в самих файлах по ходу, не только в настройках проекта. по выводу компилятора трудно колдовать.
Сообщение отредактировано icebear: 04 June 2010 — 11:33
Может, Вам из консоли попробовать компилировать? С помощью make-файла?
Я бы все же посоветовал затратить столько времени, сколько нужно для того, что бы въехать в среду Visual C++ и в то, как строятся, а затем компилятся и отлаживаются C/C++ программы.
Я, например, не представляю, как можно что-то делать серьезно хотя бы без отладки.
Так же достаточно явственно помню все неудобства, связанные с неиспользованием раздельной компиляции (Обычно начинающие приборостроители это делают наряду с тем, что для компиляции и сборки пользуются make-файлами, просто потому, что в примере в SDK используется только make-файл).
Т.е. стоит сначала освоить инструмент, хоть как-то, а уж потом пробовать клепать приборы.
Ну и естественно, так же предварительно стоит приобрести, хоть какие-то инженерные знания по изготавливаемым приборам.
А то получится, как часто получается в случае с XML приборами (не во всех случаях), по причине невозможности программирования на этом языке сложной логики.
Просто анимированные картинки, пусть даже и красивые.
Сообщение отредактировано serg_p: 05 June 2010 — 12:01
Некомпилированный шаблон кода проекта студии прицепил в архив ниже. Заранее спасибо за корректировку.
Я новичек в приборостроении. Хотел воспроизвести шаблон SDK FS9, в части касаемой только ихнего авиагоризонта для Цес. Здесь писалось о том, что при комиляции из студии make-file можно «отпустить», а постигнуть на этапе хочется пока именно среду.
Прикрепленные файлы
shablon_a.zip 1.23МБ
68 Количество загрузок:
До gau ей еще далеко.
В свое время я делал пример для Андрея акка icebear.
Не знаю на сколько он помог ему.
Посмотри, может быть поможет в чем-то разобраться.
Прикрепленные файлы
gau_sample.zip 94.52К
112 Количество загрузок:
Сообщение отредактировано serg_p: 05 June 2010 — 12:45
Есть и сама сборка. В ней файлы только того, что предложил MS. Она получилась объемной и авсим ее не подцепил. Я удалил из проекта файл типа VC++ Intellisense Database и сжал максимально. Попробую разобраться в твоем проекте, Серег. Пасиб
Прикрепленные файлы
pkpgau.zip 1.41МБ
72 Количество загрузок:
Файл инклудит сам себя.
Скорее всего там должно было быть
Нужно понять одно правило.
Файлы с расширением c/cpp — тело, собственно реализация, код.
Файлы с расширением h являются в первую очередь интерфейсом, механизмом, предоставляющим возможность вызывать функции, которые реализованы (запрограммированы) в c/cpp файле. Каждый c/cpp файл компилится в отдельный obj файл. Собственно раздельная компиляция. Изменения в одном c/cpp файле не приводят к перекомпиляции других c/cpp файлов. Все obj файлы собираются в процессе компоновки уже конкретно в exe, dll и т.д.
P.S.
Небольшое замечание по раздельной компиляции.
Так как сделано в примере из SDK ни в коем случае не приводит к раздельной компиляции отдельных С-файлов.
Когда один или несколько c/cpp файлов включаются в другой c/cpp файл через #include — для компилятора это выглядит, как один c/cpp файл и компилит он все это в один obj-файл. Т.е. здесь нет никакой раздельной компиляции.
Это ничего, когда файлов наберется штук 5, а когда их за 100 — это просто ужос.
Сообщение отредактировано serg_p: 06 June 2010 — 11:03
Сереж, собрал твой пример, и подправил свой. Компиль стал выдавать одинаковую ошибку для обоих проектов ссылаясь в .cpp-файлах на 4590-ю строку «головного» GAUGE.H. Только для твоего ошибка повторяется 4 раза тк там 4-е .cpp. Приведу нынешний лог своего проекта:
и твоего:
gauges.h — это собственно основной файл API с симом. Писался он еще при царе Горохе. Старые компиляторы (пример изначально я делал в 2003-ей студии), спокойно подменяли пропущенный тип переменной или тип возвращаемого значения функцией, на тип int. Не помню уже, с какой версии VС компилятор перестал подставлять int вместо пропущенного типа и стал считать не указание типа ошибкой. В принципе правильно. Не указывать тип переменной или возвращаемого значения функцией, есть очень нехорошее дело. Вообще, небрежное обращение с типами данных, в определенной ситуации, может сыграть в последствии очень злую шутку.
Хотя, если очень надо, то ошибку эту можно отключить.
Интересно, что у меня то все сейчас скомпилилось и студия у меня такая же, 2008-ая. Не пойму, наверное, после какого-то обновления экспресс VC, у меня компилятор стал лояльным к этой ошибке.
Замени 4590-ую строку в gauges.h
на вот эту строку.
Здесь объявляется функциональный тип данных, т.е. тип — указатель на функцию с таким-то списком параметров и таким-то возвращаемым значением. В исходном варианте пропущен тип возвращаемого значения функции.
Сообщение отредактировано serg_p: 05 June 2010 — 22:01
Сообщение отредактировано Virpil: 06 June 2010 — 16:45
Но опыта и знаний для этого слишком мало.
Форум не поможет тебе их приобрести.
Только книги и твоя задница.
И движение от простого к сложному.
Забудь пока про приборы.
(Если хочешь писать приборы на С)
Пройди для начала по какой-нибудь «мурзилке», которая учит писать проги на VC с полной проработкой примеров.
Поверь, на освоение C/C++ уходят годы.
проблема снова в файле ресурсов (.rc), который мы ещё не видели
кинь прямо сюда его код, он небольшой.
и ещё, добавлю от себя по поводу с/сpp и h файлов: файлы h по сути можно опускать, они для удобства (что бы не бегать по километровому исходнику в поисках декларации той или иной функции) или для работы с библиотеками, где реализация просто скрыта.
и ещё, может последние посты с проблемами ide переместить вот сюда http://www.avsim.su/…priborov-na-si/ ?
Сообщение отредактировано icebear: 07 June 2010 — 11:17
Мне надо взять картинку с гаги (всё, что в текущий момент там нарисовано) и продублировать в файл, например.
Я вот нашел в «case PANEL_SERVICE_POST_DRAW»:
Структура интересная, имеет поля типа:
, но они практически все равны NULL.
hdc = pelement->hdc;
но это ты доступишься до нижнего элемента в дереве, а вот будет-ли он полной картинкой — вопрос двадцать пятый. ещё одно замечание: hdc вроде можно достать только у тех, кто декларирован с флагом IMAGE_CREATE_DIBSECTION. возможно после декларации твои нули исчезнуть и появится буфер.
Сообщение отредактировано icebear: 28 November 2011 — 12:17