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

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Проблемы с импортом dll-ки  (Прочитано 4877 раз)
0 Пользователей и 3 Гостей смотрят эту тему.
Sands
Помогающий

ua
Offline Offline

« : 16-10-2006 13:59 » new

Есть у меня dll-лина в которой находятся CLSID нескольких классов. Я ее импртирую директивой #import но при етом возникает следующая проблема: в етой же dll-лине есть обьявление структуры вида
Код:
 
struct _FW_CONNECTION_INFO
{
    unsigned long m_ConnId;
    int m_Proto;
    int m_State;
    unsigned long m_AddrFrom;
    unsigned short m_PortFrom;
    unsigned long m_AddrTo;
    unsigned short m_PortTo;
    LARGE_INTEGER m_CreationTime; // обратите внимание на эту строчку!!!!!!
    unsigned __int64 m_BytesSent;
    unsigned __int64 m_BytesRecieved;
    char m_szAppName[500];
}
а после выполнения директивы я получаю *.tlh-файл, в котором данное обьявление уже выглядит следующим образом:
Код:
struct _FW_CONNECTION_INFO
{
    unsigned long m_ConnId;
    int m_Proto;
    int m_State;
    unsigned long m_AddrFrom;
    unsigned short m_PortFrom;
    unsigned long m_AddrTo;
    unsigned short m_PortTo;
    struct _LARGE_INTEGER m_CreationTime;// та самая строка, но в новом лице
    unsigned __int64 m_BytesSent;
    unsigned __int64 m_BytesRecieved;
    char m_szAppName[500];
}
после чего получаю ошибку
error C2011: '_LARGE_INTEGER' : 'union' type redefinition
Кто знает как побороть такую гадость?
Причем скажу сразу, что добавление инструкции
rename("_LARGE_INTEGER","LARGE_INTEGER")
или
rename("struct _LARGEINTEGER","LARGE_INTEGER")
ни к чему не приводит
« Последнее редактирование: 12-12-2007 16:19 от Алексей1153++ » Записан
Sands
Помогающий

ua
Offline Offline

« Ответ #1 : 17-10-2006 10:29 » 

Решение найдено. Всем, кому интерестно - вот оно:
при импорте надо указать директиву
Код:
rename("_LARGE_INTEGER","")
и все будет ОК.
Записан
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines