Компьютерный форум NoWa.cc Здесь может быть Ваша реклама
Правила Форума
редакция от 22.06.2020
Форум .::NoWa.cc::.
Вернуться   Компьютерный форум NoWa.cc > В помощь вебмастеру > Программирование > Visual C++ / С/C++

Уважаемые пользователи nowa.cc. Мы работаем для вас более 20 лет и сейчас вынуждены просить о финансовой помощи по оплате за сервер.
Окажите посильную поддержку, мы очень надеемся на вас. Реквизиты для переводов ниже.
Webmoney Webmoney WMZ: Z021474945171 Webmoney WME: E159284508897 Webmoney WMUSDT: T206853643180
Кошелёк для вашей помощи YooMoney 4100117770549562
YooMoney Спасибо за поддержку!

Ответ
 
Опции темы Опции просмотра Language
Старый 12.03.2008, 15:23   #1
Неактивный пользователь
 
Регистрация: 04.03.2008
Сообщений: 2
Репутация: 0
По умолчанию dll form C# in C++

можно ли создать библиотеку DLL на шарпе и использовать ее функции в С++??

Добавлено через 1 минуту
Я начинающий в сях, так что не бейте больно! ;)

Последний раз редактировалось tr1ton; 12.03.2008 в 15:24.. Причина: Добавлено сообщение
tr1ton вне форума
 
Ответить с цитированием Вверх
Старый 12.03.2008, 18:22   #2
zss
Постоялец
 
Пол:Мужской
Регистрация: 05.02.2007
Адрес: Москва
Сообщений: 662
Репутация: 271
По умолчанию Ответ: dll form C# in C++

Насколько я знаю, тут должна быть полная совместимость. Создаете dll и заодно lib (Кстати, lib можно получить из dll и потом с помощью lib.exe). Подключаете этот lib в С++ проект, а объявление экспортируемых функций можно вписать самостоятельно прямо в С++ файл.
__________________
Сергей Сергеевич
zss вне форума
 
Ответить с цитированием Вверх
Старый 12.03.2008, 18:39   #3
k0t_
Пользователь
 
Пол:Мужской
Регистрация: 27.02.2008
Адрес: Днепропетровск, Украина
Сообщений: 149
Репутация: 802
По умолчанию Ответ: dll form C# in C++

Цитата:
Сообщение от tr1ton Посмотреть сообщение
можно ли создать библиотеку DLL на шарпе и использовать ее функции в С++??

Добавлено через 1 минуту
Я начинающий в сях, так что не бейте больно! ;)

Можно.
Существует два способа - динамическая загрузка и статическая линковка.
Динамическая загрузка выполняется при помощи функций LoadLibrary/GetProcAddress, перед этим необходимо объявить указатель на функцию примерно так:
Код:
typedef HWND (__import *pLoadForm)(HWND Handler,const char* connect);
 pLoadForm fLoadForm;
  HINSTANCE hDll = LoadLibrary("complcomp.dll");
  if(!hDll)return;
  fLoadForm = (pLoadForm)GetProcAddress(hDll,"_LoadForm");
  String temp = WideCharToString(dmMain->adoConnect->ConnectionString);
  hWnd = fLoadForm(this->Handle,temp.c_str());
В данном примере вызывается функция из длл LoadForm и ей передается хендл приложения и строка подключения. (Пример написан для С++Билдера - в VisualStudio немного другие макросы импорта, но я думаю разберетесь)
Для статической линковки необходима библиотека экспорта с раширением .lib которая подключается в проект на этапе линковки.
Преимуществом статической линковки является:
1. Загружается сразу при старте приложения - т.е. нет накладных расходов на загрузку
2. Можно использовать объекты из длл
Недостатки -
1. если длл отсутствует - приложение не загрузится
2. Занимает больше памяти- в не зависимости от того используется функции длл или нет.
3. Динамически могут быть загружены все длл функции которых отвечают правилам, статически - не всегда.
k0t_ вне форума
 
Ответить с цитированием Вверх
Старый 13.03.2008, 11:44   #4
tr1ton
Неактивный пользователь
 
Регистрация: 04.03.2008
Сообщений: 2
Репутация: 0
По умолчанию Ответ: dll form C# in C++

тогда вопрос знатокам!!! (я в программинге недавно)

возможно ли сделать на шарпе библиотеку доступа к объектам ActiveDirectory (там это легко реализуется, а на с++ не нашел как это сделать), и потом использовать эту библиотеку в с++ проекте без установленного на машине фреймворка?????
tr1ton вне форума
 
Ответить с цитированием Вверх
Старый 13.03.2008, 12:29   #5
k0t_
Пользователь
 
Пол:Мужской
Регистрация: 27.02.2008
Адрес: Днепропетровск, Украина
Сообщений: 149
Репутация: 802
По умолчанию Ответ: dll form C# in C++

Цитата:
Сообщение от tr1ton Посмотреть сообщение
тогда вопрос знатокам!!! (я в программинге недавно)

возможно ли сделать на шарпе библиотеку доступа к объектам ActiveDirectory (там это легко реализуется, а на с++ не нашел как это сделать), и потом использовать эту библиотеку в с++ проекте без установленного на машине фреймворка?????

Нет. Это плата за легкость работы.

Добавлено через 2 минуты
Цитата:
Сообщение от tr1ton Посмотреть сообщение
тогда вопрос знатокам!!! (я в программинге недавно)

возможно ли сделать на шарпе библиотеку доступа к объектам ActiveDirectory (там это легко реализуется, а на с++ не нашел как это сделать), и потом использовать эту библиотеку в с++ проекте без установленного на машине фреймворка?????

Что имеется ввиду не нашел? Ты можешь получать доступ к объектам АД на любом языке (я не имею ввиду Кобол ), на С++ это сделать немного сложнее чем на шарпе - но не намного, я должен сказать.

Последний раз редактировалось k0t_; 13.03.2008 в 12:31.. Причина: Добавлено сообщение
k0t_ вне форума
 
Ответить с цитированием Вверх
Ответ


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Form Pilot Professional ILLARDAN Варезник 2 15.12.2012 06:32
Help! Send Form! Mithrandir PHP 2 27.12.2010 07:08
Работа с FORM тегами в HTML и JS K7778 Java Script 7 21.09.2009 05:42
Form выпадающий список Akuji Java Script 4 12.02.2008 17:48
E-Mail Form tayfoon Веб - Программирование 1 16.10.2007 12:34

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 17:29. Часовой пояс GMT +3.


Copyright ©2004 - 2026 NoWa.cc

Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2026, vBulletin Solutions, Inc. Перевод: zCarot
Время генерации страницы 0.04695 секунды с 11 запросами