С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.92/13: Рейтинг темы: голосов - 13, средняя оценка - 4.92
17 / 19 / 4
Регистрация: 03.02.2010
Сообщений: 262

Проблема с компиляцией DirectShow

19.10.2011, 16:56. Показов 2542. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Столкнулся со следующей проблемой:
Начал разбирать пример консольной программы Directshow с MSDN, которая воспроизводит видео файл в формате .avi
Действовал следующим образом:
1. В Visual Studio 2010 создал консольный проект с предкомпилированным заголовком;
2. В свойствах проекта (Alt+F7), добавил заголовочный файл "DShow.h" и библиотеку "strmiids.lib" как написано на MSDN;
3. Далее возник следующий вопрос.. в исходном коде программы на MSDN весь код находиться в теле функции void main(void), а когда создается консольный проект в VS2010, то предкомпилированное тело функции имеет следующий вид int _tmain (int argc, char *argv[]). Как мне поступить в этом случае, не могу скомпилировать программу...

Вот исходный код программы, которая должна воспроизводить файл в формате .avi

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
#include <dshow.h>
void main(void)
{
    IGraphBuilder *pGraph = NULL;
    IMediaControl *pControl = NULL;
    IMediaEvent   *pEvent = NULL;
 
    // Initialize the COM library.
    HRESULT hr = CoInitialize(NULL);
    if (FAILED(hr))
    {
        printf("ERROR - Could not initialize COM library");
        return;
    }
 
    // Create the filter graph manager and query for interfaces.
    hr = CoCreateInstance(CLSID_FilterGraph, NULL, CLSCTX_INPROC_SERVER, 
                        IID_IGraphBuilder, (void **)&pGraph);
    if (FAILED(hr))
    {
        printf("ERROR - Could not create the Filter Graph Manager.");
        return;
    }
 
    hr = pGraph->QueryInterface(IID_IMediaControl, (void **)&pControl);
    hr = pGraph->QueryInterface(IID_IMediaEvent, (void **)&pEvent);
 
    // Build the graph. IMPORTANT: Change this string to a file on your system.
    hr = pGraph->RenderFile(L"C:\\Example.avi", NULL);
    if (SUCCEEDED(hr))
    {
        // Run the graph.
        hr = pControl->Run();
        if (SUCCEEDED(hr))
        {
            // Wait for completion.
            long evCode;
            pEvent->WaitForCompletion(INFINITE, &evCode);
 
            // Note: Do not use INFINITE in a real application, because it
            // can block indefinitely.
        }
    }
    pControl->Release();
    pEvent->Release();
    pGraph->Release();
    CoUninitialize();
}
Попробуйте скомпилировать эту программу у себя, может я что-либо не так делаю или нехватает како-то заголовочного файла? Вот ссылка на ветку: http://msdn.microsoft.com/en-u... 85%29.aspx
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
19.10.2011, 16:56
Ответы с готовыми решениями:

Проблема с компиляцией (help)
установил С++ 6.0 , но что то проблемный какой то jmu debug &gt; go (v otvet ) this file does not exist. yes want to build it &gt; file not...

проблема с компиляцией
уважаемые форумчане есть программы компилировал в Microsoft Visual Studio 2010 Ultimate и в Microsoft Visual Studio 2010 Express и не в...

Проблема с компиляцией
Сегодня начал изучать C++ Скачал инсталлятор MinGW отсюда: ...

6
 Аватар для HighPredator
6045 / 2160 / 753
Регистрация: 10.12.2010
Сообщений: 6,005
Записей в блоге: 3
19.10.2011, 19:40
Цитата Сообщение от al072 Посмотреть сообщение
не могу скомпилировать программу
Какие ошибки? Приведите.
0
4 / 4 / 0
Регистрация: 15.10.2011
Сообщений: 39
19.10.2011, 19:45
а зачем тебе консольный проект? бери MFC
0
 Аватар для HighPredator
6045 / 2160 / 753
Регистрация: 10.12.2010
Сообщений: 6,005
Записей в блоге: 3
19.10.2011, 22:34
Цитата Сообщение от Федор-Липецк Посмотреть сообщение
а зачем тебе консольный проект?
У автора пример из msdn под консоль.
0
17 / 19 / 4
Регистрация: 03.02.2010
Сообщений: 262
21.10.2011, 07:26  [ТС]
Цитата Сообщение от Predator_2004 Посмотреть сообщение
У автора пример из msdn под консоль.
Хорошо, коды ошибок выложу..

Добавлено через 21 час 43 минуты
Цитата Сообщение от al072 Посмотреть сообщение
Хорошо, коды ошибок выложу..
При условии, что весь код, я вставляю в тело функции int _tmain(int argc, char *argv[]). Компилятор ругается на строчки (18 и 28) выдает следующие ошибки:

Ошибка 1 error C2561: wmain: функция должна возвращать значение c:\users\alex\documents\visual studio 2010\projects\play a file\play a file\play a file.cpp 19 1 play a file
Ошибка 2 error C2561: wmain: функция должна возвращать значение c:\users\alex\documents\visual studio 2010\projects\play a file\play a file\play a file.cpp 28 1 play a file
0
 Аватар для HighPredator
6045 / 2160 / 753
Регистрация: 10.12.2010
Сообщений: 6,005
Записей в блоге: 3
21.10.2011, 10:03
У вас главная подпрограмма объявлена в виде функции, возвращающей целочисленное значение, но, скажем здесь:
C++
1
2
3
4
5
if (FAILED(hr))
    {
        printf("ERROR - Could not create the Filter Graph Manager.");
        return;
    }
значение не возвращается. Делайте
C++
1
return 1;
для мест, где обработаны ошибки, и в конце функции
C++
1
return 0;
Добавлено через 1 минуту
Вдогонку:http://msdn.microsoft.com/en-u... s.80).aspx
0
17 / 19 / 4
Регистрация: 03.02.2010
Сообщений: 262
21.10.2011, 10:13  [ТС]
Спасибо вечером попробую..по результатам отпишусь..
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
21.10.2011, 10:13
Помогаю со студенческими работами здесь

Проблема с компиляцией Релиза на VS2010
Приветствую. У меня опять возникла не логичная ситуация. Создал проект на VS2008. Через некоторое время решил его перевести на VS2010....

Проблемы с компиляцией
Привет, Пытаюсь скомпилировать win32 библиотеку, при компиляции возникает следующее: Error 103 error : Required file...

Помогите с компиляцией!
Всем привет! Я решил влиться в ряды программеров (На Паскале уже могу чуть писать ) Решил учить СИ++. Куписл книгу, установил с диска...

Просьба с компиляцией
Сегодня что то случилось с компиляторами на 2 разных запускал толку... Ошыбка: error: stray '\179' in program Просьба запустить код...

Проблемы с компиляцией
Фрумчане помогите ! Программа работает, но выдает ошибки при компиляции. Не могу понять что не так... Вот код. #include...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Programma_Boinc 01.01.2026
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути Сочетание глобально распределённой вычислительной мощности и инновационных. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru