Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Компиляция программы  (Прочитано 33840 раз)
0 Пользователей и 2 Гостей смотрят эту тему.
verfallen
Гость
« : 17-01-2009 07:00 » 

Здравствуйте!..У меня такая проблема. Есть программа(исходник) проигрывателя Wave файлов. Но ни как не получается откомпилировать ее. Я работаю на Visual Studio Net 2008.Когда запускаю проект этой программы, то мне выдается табличка пере конвертировать проект под VS 2008. Я нажимаю "да", появляются файлы моего проекта. Пытаюсь компилировать, а оно пишет что нет файлов, хотя все они есть в папке с проектом. мой проект сделан В MFC. Я пробовал компилировать его с преподом своим на VS 2003. тогда мы создавали новый проект а потом вставляли недостающие файлы. Сейчас пробую тоже самое - не выходит ничего...мне очень это нужно, может кто знает, в чем проблема??..Подскажите пожалуйста!

вот файлы:
http://files.mail.ru/DXZFL2 - проект со всеми файлами
http://files.mail.ru/EIWPA5 - исходник     
Записан
Джон
просто
Администратор

de
Offline Offline
Пол: Мужской

« Ответ #1 : 18-01-2009 09:00 » new

В 6ой компилится без проблем. Уже проверил.

На 2008 надо настраивать пути, судя по всему. Короче не компилиться, не находит файлы. Глубоко не разбирался.
« Последнее редактирование: 18-01-2009 09:05 от Джон » Записан

Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома.
"Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash
"Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman
"All science is either physics or stamp collecting." Ernest Rutherford
"Wer will, findet Wege, wer nicht will, findet Gründe."
Джон
просто
Администратор

de
Offline Offline
Пол: Мужской

« Ответ #2 : 18-01-2009 09:04 » 

Результат компиляции на 2003 студии

------ Rebuild All started: Project: CWaveFile, Configuration: Debug Win32 ------

Deleting intermediate files and output files for project 'CWaveFile', configuration 'Debug|Win32'.
Compiling...
CWaveFile.CPP
Automatically linking with winmm.lib
j:\WaveCtrl_demo\WaveFile\CWaveFile.CPP(346) : error C2065: 'DSBCAPS_CTRLDEFAULT' : undeclared identifier

Build Time 0:05
Build log was saved at "file://j:\WaveCtrl_demo\WaveFile\Debug\BuildLog.htm"
CWaveFile - 1 error(s), 0 warning(s)


------ Rebuild All started: Project: DSound, Configuration: Debug Win32 ------

Deleting intermediate files and output files for project 'DSound', configuration 'Debug|Win32'.
Compiling...
StdAfx.cpp
 WINVER not defined. Defaulting to 0x0501 (Windows XP and Windows .NET Server)
Compiling...
MainFrm.cpp
DSoundView.cpp
DSoundDoc.cpp
DSound.cpp
j:\WaveCtrl_demo\DSound.cpp(60) : warning C4996: 'CWinApp::Enable3dControls' was declared deprecated
        c:\Programme\Microsoft Visual Studio .NET 2003\Vc7\atlmfc\include\afxwin.h(4369) : see declaration of 'CWinApp::Enable3dControls'
CWaveFile.CPP
j:\WaveCtrl_demo\WaveFile\CWaveFile.CPP(346) : error C2065: 'DSBCAPS_CTRLDEFAULT' : undeclared identifier
Generating Code...

Build Time 0:02
Build log was saved at "file://j:\WaveCtrl_demo\Debug\BuildLog.htm"
DSound - 1 error(s), 1 warning(s)


---------------------- Done ----------------------

    Rebuild All: 0 succeeded, 2 failed, 0 skipped


« Последнее редактирование: 18-01-2009 09:06 от Джон » Записан

Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома.
"Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash
"Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman
"All science is either physics or stamp collecting." Ernest Rutherford
"Wer will, findet Wege, wer nicht will, findet Gründe."
verfallen
Гость
« Ответ #3 : 18-01-2009 09:21 » 

Джон, насколько я понял у тебя при компиляции в 2003 студии выдало одну ошибку....то есть проект не скомпилировался?Не понял......А я хотел еще узнать, нужны ли какие нибуть MSDN библиотеки для 6й студии???.......А как ты компилировал на 2003й??..просто открыл проект и скомпилировал, или может выполнял какие то еще процедуры перед компиляцией???   
« Последнее редактирование: 18-01-2009 09:43 от verfallen » Записан
Джон
просто
Администратор

de
Offline Offline
Пол: Мужской

« Ответ #4 : 18-01-2009 09:33 » 

verfallen, ещё раз (читай внимательно) - на 6ой студии твой проект ещё по первому линку (вчера ещё проверил, но тк тебе уже посоветовали искать 6ю, то ничего не стал писАть) компилируется без проблем с 0 ошибок. Как есть без всяких изменений. Сгрузил, распаковал, открыл, скомпилил - готово.

А второе сообщение относится к компиляции на 2003 студии (по твоей просьбе), там судя по всему не хватает нужных (правильной версии) заголовочных файлов, которые поставляются обычно с платформами DDK/SDK.
Те в той версии что стоит у меня не определён DSBCAPS_CTRLDEFAULT.

Судя по всему, твой проект очень старый и в новых версиях что-то изменили.

нужны ли какие нибуть MSDN библиотеки для 6й студии?

Что значит MSDN библиотеки? Если ты имеешь ввиду MSDN Library, то это только справочная система и на процесс компиляции она никак не влияет.

Что-то после этого вопрса меня терзают смутные сомнения. После фразы
Я работаю на Visual Studio Net 2008.
этот вопрос звучит очень нелепо. Ты вобще-то кто и чем занимаешься?
Записан

Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома.
"Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash
"Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman
"All science is either physics or stamp collecting." Ernest Rutherford
"Wer will, findet Wege, wer nicht will, findet Gründe."
verfallen
Гость
« Ответ #5 : 18-01-2009 09:48 » 

Я вообще то сетевик......учусь на КСМ(Компьютерные системы и сети)....А это просто мне нужно курсовой проект сдать по системному программированию.... Честно программирование не мой конек.....я не люблю часами просиживать на одном месте и ламать голову над очередным куском программы...ну приходится.....я больше люблю заниматься сетевыми технологиями Улыбаюсь.....А можно еще спросить, что означает такая запись
Код:
void CWaveViewCtrl::Serialize( CArchive& ar )

как понять знак "::" и что это означает??....Подскажите пожалуйста!!!
« Последнее редактирование: 18-01-2009 09:54 от verfallen » Записан
Алексей++
глобальный и пушистый
Глобальный модератор

ru
Offline Offline
Сообщений: 13


« Ответ #6 : 18-01-2009 11:47 » 

verfallen,

void CWaveViewCtrl::Serialize( CArchive& ar )

это означает, что это реализация метода "void Serialize( CArchive& ar );" который имеется в классе "CWaveViewCtrl"

Цитата
я не люблю часами просиживать на одном месте и ламать голову над очередным куском программы...ну приходится.....я больше люблю заниматься сетевыми технологиями
расскажи, очень интересно, что за работа такая - "сетевые технологии" , где думать не нужно ? ) А не скучно ?
Записан

Джон
просто
Администратор

de
Offline Offline
Пол: Мужской

« Ответ #7 : 18-01-2009 13:59 » 

А :: ещё называется "scope operator" - те он означает, что след. за ним выражение ф-ции, переменной и тп относися к пространству имён аргумента стоящего перед ним.

Но если ты хочешь занимать и дальше программированием, то без толстой книжки не обойтись. Хотя в силу высказывания "я не люблю" тебе лучше тогда сразу оставить это знятие, ибо 99% ты занимаешься именно сидением над куском программы. Удовольствие получаешь от остальных оставшихся процентов. Увы.
Записан

Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома.
"Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash
"Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman
"All science is either physics or stamp collecting." Ernest Rutherford
"Wer will, findet Wege, wer nicht will, findet Gründe."
verfallen
Гость
« Ответ #8 : 19-01-2009 06:38 » 

Помогите пожалуйста..У меня снова проблемы с компиляцией:(....Скачал 6й Visual С++.....начал компилировать, и вот какая ошибка была сначала
Compiling...
CWaveFile.CPP
e:\кту\cиc.програм\курсовая работа\wavectrl_demo\wavefile\cwavefile.cpp(2) : fatal error C1083: Cannot open include file: 'stdafx.h': No such file or directory
Error executing cl.exe.

CWaveFile.exe - 1 error(s), 0 warning(s)

когда ложу этот файл в директорию, появляются следующее ошибки:
--------------------Configuration: CWaveFile - Win32 Debug--------------------
Compiling...
CWaveFile.CPP
Linking...
nafxcwd.lib(thrdcore.obj) : error LNK2001: unresolved external symbol __endthreadex
nafxcwd.lib(thrdcore.obj) : error LNK2001: unresolved external symbol __beginthreadex
libcd.lib(crt0.obj) : error LNK2001: unresolved external symbol _main
Debug/CWaveFile.exe : fatal error LNK1120: 3 unresolved externals
Error executing link.exe.

CWaveFile.exe - 4 error(s), 0 warning(s)

Не пойму в чем проблема..Подскажите пожалуйста, что я делаю не так, очень прошу!!!
P.S. Я не сказал ,что в сетевых технологиях не нужно думать, думать там приходится не намного меньше ,чем в программировании, просто я получаю больше удовольствия именно от сетевых технологий нежели от составления программ Улыбаюсь
Записан
Алексей++
глобальный и пушистый
Глобальный модератор

ru
Offline Offline
Сообщений: 13


« Ответ #9 : 19-01-2009 08:27 » 

не надо этот файл в проект класть, надо включить прекомпиленые заголовки

alt+F7 -> вкладка C/C++ -> категория Precompiled Headers  , переключатель "UsePrecompiled header file"

в окошке должно быть "stdafx.h"
Записан

Джон
просто
Администратор

de
Offline Offline
Пол: Мужской

« Ответ #10 : 19-01-2009 09:11 » 

Да, не. Там инклуд стоит, поэтому и не компилиться. Только, verfallen, ты компилируй тот проект где много файлов. А где только два я даже не знаю нафига он нужен. Так до кучи положили. Для наглядности так сказать.
Записан

Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома.
"Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash
"Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman
"All science is either physics or stamp collecting." Ernest Rutherford
"Wer will, findet Wege, wer nicht will, findet Gründe."
Джон
просто
Администратор

de
Offline Offline
Пол: Мужской

« Ответ #11 : 19-01-2009 09:22 » 

зы Если ты его открываешь, то смени стартовый проект на DSound. Для этого кликни правой кнопкой по нему в дереве и выбери Set as Active Project



* ss1.gif (5.6 Кб - загружено 3146 раз.)
Записан

Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома.
"Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash
"Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman
"All science is either physics or stamp collecting." Ernest Rutherford
"Wer will, findet Wege, wer nicht will, findet Gründe."
verfallen
Гость
« Ответ #12 : 19-01-2009 14:06 » 

УРА!!!!!!!...заработало, наконец то!.....Спасибо вам огромное за помощь.... Во век не забуду!!!
можете подсказать еще одно дело...как мне изменить цвет кнопочек и где изменять сведенья о копирайте???
Записан
Джон
просто
Администратор

de
Offline Offline
Пол: Мужской

« Ответ #13 : 19-01-2009 16:29 » 

1. Цвет кнопочек лучше оставить как есть. (это я серьёзно)

2. У тебя есть файл в проекте - DSound.rc. В нём, в строках (оригинальный файл из твоего проекта) 155 - 163 меняешь инфу как надо.

            VALUE "LegalCopyright", "Copyright (C) 1999\0"

Сложнее это можно сделать через редактор ресурсов.

« Последнее редактирование: 19-01-2009 16:32 от Джон » Записан

Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома.
"Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash
"Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman
"All science is either physics or stamp collecting." Ernest Rutherford
"Wer will, findet Wege, wer nicht will, findet Gründe."
verfallen
Гость
« Ответ #14 : 19-01-2009 17:15 » 

А как его открыть, что б отредактировать???....Я запускаю его, нахожу там Version info и там начинаю менять на свою инфу, потом компилирую и все равно остаются теже данные......А вот что б строки найти 155-163 ,не могу понять ,где это .....подскажи пожалуйста ,подробнее, и извини такого ламера как я за тупые вопросы.
ВСЕ Спасибо!!... Я разобрался с этим Улыбаюсь
« Последнее редактирование: 19-01-2009 17:30 от verfallen » Записан
verfallen
Гость
« Ответ #15 : 20-01-2009 15:27 » 

Помогите пожалуйста, у меня возникла проблема......я скомпилировал проект свой в VC++ 6м. У себя пробовал exe-файл работал. Пришел показівать преподу в универ....И там он не запустился...написало ,что нет библиотеки MFC42D.DLL....не могу понять что мне сделать чтоб exe-к заработал в универе, может как-то не так надо компилировать..подскажите пожалуйста по возможности,очень прошу!
Записан
Вад
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #16 : 20-01-2009 15:36 » 

MFC надо линковать статически. В настройках проекта должно быть (где именно это в VS 6.0 - не знаю, может, Алексей1153++ или Джон подскажут). Если что, ищи в настройках сборки-линковки по ключевым словам "MFC" и "static link"
Записан
Алексей++
глобальный и пушистый
Глобальный модератор

ru
Offline Offline
Сообщений: 13


« Ответ #17 : 20-01-2009 15:49 » 

да там по умолчанию всё нормально настроено, надо просто конфигурацию Release выбрать Улыбаюсь
Записан

verfallen
Гость
« Ответ #18 : 20-01-2009 16:24 » 

А как конфигурацию Release выбрать, я не могу найти, там есть Build...а  Release не видно Жаль...Подскажи пожалуйста!....Вот все что там есть:

Вад Спасибо за подсказку....Попробовал начало компилировать и появилась следующая ошибка

LINK : fatal error LNK1181: cannot open input file "F:\micros~1\VC98\Lib\DSound.lib"
Error executing link.exe.

DSound.exe - 1 error(s), 0 warning(s)

Что єто может означать в чем причина??

* 1.JPG (11.45 Кб - загружено 1241 раз.)
« Последнее редактирование: 20-01-2009 16:44 от verfallen » Записан
Вад
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #19 : 20-01-2009 16:39 » 

verfallen, "Set Active Configurations" - думаю, стоит смотреть там
Записан
Алексей++
глобальный и пушистый
Глобальный модератор

ru
Offline Offline
Сообщений: 13


« Ответ #20 : 21-01-2009 04:39 » 

LINK : fatal error LNK1181: cannot open input file "F:\micros~1\VC98\Lib\DSound.lib"

это к DirectX SDK надо пути прописать в
Tools - Options - Directories
для Include Files
    Library Files

ну и соответственно DX SDK должен быть установлен
Записан

verfallen
Гость
« Ответ #21 : 21-01-2009 05:07 » 

СПАСИБО за подсказку.......а где можно найти DX SDK ,или как проверить, есть ли она у тебя на компьютере???
Я у себя нашел 2 папки SDK:
D:\Inetpub\iissamples
D:\Program Files\The KMPlayer

Какую мне дописывать в проекте???
Я еще не могу понять почему у меня пишет путь F:\micros~1\VC98\Lib\DSound.lib???.....У меня диск  F вообще забит мультимедиа и никаких програм нам нет точно. Что это может означать, может где то прописан неверный путь??
« Последнее редактирование: 21-01-2009 05:25 от verfallen » Записан
Алексей++
глобальный и пушистый
Глобальный модератор

ru
Offline Offline
Сообщений: 13


« Ответ #22 : 21-01-2009 05:24 » 

проверить так: если ты ставил DirectX SDK , то он есть.

у меня по умолчанию пути такие были

C:\Program Files\Microsoft DirectX SDK (August 2008)\Include
C:\Program Files\Microsoft DirectX SDK (August 2008)\Lib\x86

а качать с сайта майкрософта
Записан

verfallen
Гость
« Ответ #23 : 21-01-2009 05:30 » 

А ты дописывал эти пути, или удалял прежние и оставлял только эти. У меня в Include Files прописано:
C:\Microsoft Visual Studio\VC98\INCLUDE
C:\Microsoft Visual Studio\VC98\MFC\INCLUDE
C:\Microsoft Visual Studio\VC98\ATL\INCLUDE

В Library Files :
C:\Microsoft Visual Studio\VC98\LIB
C:\Microsoft Visual Studio\VC98\MFC\LIB

Мне их удалять и оставить только пути к SDK или просто добавить пути?Не понял?
Записан
Алексей++
глобальный и пушистый
Глобальный модератор

ru
Offline Offline
Сообщений: 13


« Ответ #24 : 21-01-2009 05:52 » 

удалять ничего не надо. Просто добавить в конец
Записан

Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines