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

Помогите создать конструкцию как экспортируемую функцию shared DLL - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ использование ActiveX http://www.cyberforum.ru/cpp-beginners/thread474745.html
Киньте плз в меня эхотажным кодом, который будет аналогичен jscript-овскому: var progid='Sample.MyObj'; var obj=new ActiveXObject(progid); var param='test1'; var text=obj.getValue(param);
C++ Как реализован полиморфизм? Если я не ошибаюсь, то, благодаря ему, если member-функция fun в базовом классе CBase объявлена как virtual, и перегружена в производном CDerived, то при вызове pBaseObj->fun то, какая функция вызывается, определяется тем, что присвоено pBaseObj (определенном, как CBase*). Как это может быть реализовано совершенно непонятно. Ведь в книжке по MS-DOS-овскому C++ написано, что объект класса,... http://www.cyberforum.ru/cpp-beginners/thread474720.html
Как добавить CRecordVIew в проект VC7.0 C++
Подскажите пожалуйста как добавить CRecordVIew в проект VC7.0 В 6 версии готовился шаблон диалога далее вызывался CLassWizard с помощью которго добавлялся CRecordView и связывался с CRecordset. Может кто знает как это сделать в 7 версии. Я так же делаю заготовку шаблона диалога, далее говорю добавить класс,но CRecordView в вэтом списке не доступен. Спасибо.
подскажите с выбором языка C++
В данный момент изучаю ассемблер, потом хочу выучить выссокий язык для создания игр типа star craft'a или cs помогите выбрать язык который лучше всего справляется с этим и проще всего делать такие проги. Буду очень благодарен. Пожалуйсто пишите на mailto: wulfic@yandex.ru
C++ Проблема с выводом bitmap-ов на принтер... http://www.cyberforum.ru/cpp-beginners/thread474658.html
Вобчем, дело такое. берем любой экранный DC например форму. берем любой битмап - например из ресурсов берем самый стандартный BitBlt - все пучком, через не раз описанный memDC все работает. берем DC принтера. выводим на него всякую фигню (техт, ректанглы и т.п.)- все пучком пробуем вывести битмап - ошибок не выдает, все пучком... вот только не выводит. т.е. текст и т.д. - выводит, а...
C++ Как программно сжать директорию или несколько файлов? нужно программно сжать директорию или несколько файлов то что я нашел в сети сжимает только один файл подскажите если кто знает подробнее

Показать сообщение отдельно
Said007
0 / 0 / 0
Регистрация: 02.09.2007
Сообщений: 209
23.03.2009, 14:56  [ТС]     Помогите создать конструкцию как экспортируемую функцию shared DLL
Это невероятно, действительно функция заработала. Еще раз благодарю и еще раз прошу о помощи.
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
extern 'C' __declspec(dllexport) void __stdcall toPrint(IDispatch* *ppDoc,
SAFEARRAY* *pArgs)
{
        
    IDispatch* pDoc = *ppDoc;
    
    DISPID dispid;
    LPOLESTR lpszEv = OLESTR('Caption');
    HRESULT hr = pDoc->GetIDsOfNames(IID_NULL, &lpszEv, 1,
    LOCALE_USER_DEFAULT, &dispid);
 
    VARIANT vResult;
    VariantInit(&vResult);
    DISPPARAMS dispparams = { NULL, NULL, 0, 0};
 
    hr = pDoc->Invoke(dispid, IID_NULL, LOCALE_USER_DEFAULT,
    DISPATCH_PROPERTYGET, &dispparams, &vResult, NULL, NULL);
 
    dispparams.rgvarg = &vResult;
    vResult.bstrVal[0] = 'x'
    dispparams.cArgs = 1;
    DISPID dispidPut = DISPID_PROPERTYPUT;
    dispparams.rgdispidNamedArgs = &dispidPut;
    dispparams.cNamedArgs = 1;
 
    //Где-то в этом месте происходит исключение
        hr = pDoc->Invoke(dispid, IID_NULL, LOCALE_USER_DEFAULT,
    DISPATCH_PROPERTYPUT, &dispparams, NULL, NULL, NULL);
    //Где-то в этих двух строчках
 
    if( *pArgs )
    {
    long index[1] = { 1 };
    hr = ::SafeArrayPutElement(*pArgs, index, &vResult );
    }
    VariantClear(&vResult);
    return;
}
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru