Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
smo
0 / 0 / 0
Регистрация: 14.05.2014
Сообщений: 2
#1

Подключение Dll на С++ к Java и С# - C++

14.05.2014, 20:09. Просмотров 978. Ответов 4
Метки нет (Все метки)

Добрый день.

Подскажите, пожалуйста куда копать: надо создать DLL на С++ с функциями, структурами и классом так, чтобы её потом можно было подключить к Java и С#.

Как подключить её к другому С++ приложению - я понимаю. Либо статика либо хэдер, который у меня есть. А вот как это всё импортировать в Java и С# я не представляю, так как кроме обычных типов, там есть ещё и классы и структуры.

Заранее спасибо!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.05.2014, 20:09
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Подключение Dll на С++ к Java и С# (C++):

подключение dll - C++
Подскажите в чем проблема Текст Prog.cpp #include <windows.h> #include <iostream.h> #include <stdio.h> #include <conio.h> ...

подключение dll - C++
Подключаю dll и при определении класса из dll вылезают такие ошибки, помогите пожалуйста :) : Error 1 error LNK2005: "int __cdecl...

Подключение dll библиотеки - C++
Привет. Для работы с шаговым двигателем мне необходимо воспользоваться приложенной к нему dll библиотекой в которой как раз и реализованы...

Подключение dll (C++) к проекту VB 6.0 - C++
Здравствуйте! Проблемма в подключении ДЛЛ к VB 6. есть библиотека на C++ //ConsoleApplication2.cpp: определяет точку входа для...

Динамическое подключение DLL - C++
Здравствуйте! Скорее всего, мой вопрос покажется вам глупым, но всё же... Я не могу динамически подключить библиотеку. Когда подключаю...

Подключение dll - ошибка - C++
Собрал свою dll и header .... Далее закинул их в папку с проектом и добавил в проект (Project->Add Existing Item) ... Подключил header...

4
Убежденный
Ушел с форума
Эксперт С++
15708 / 7218 / 1139
Регистрация: 02.05.2013
Сообщений: 11,637
Записей в блоге: 1
Завершенные тесты: 1
14.05.2014, 21:14 #2
Цитата Сообщение от smo Посмотреть сообщение
Как подключить её к другому С++ приложению - я понимаю. Либо статика либо хэдер, который у меня есть. А вот как это всё импортировать в Java и С# я не представляю, так как кроме обычных типов, там есть ещё и классы и структуры.
К сожалению, интерфейсы в стиле C++ являются непереносимыми на
другие языки. И даже внутри самого C++ есть куча несовместимостей.
Поэтому тут вариантов не шибко много:

1) Сделать экспорт в стиле C, так как это сделано в системных
библиотеках типа kernel32.dll: экспортируются только функции и
только с определенным набором типов, размеры и "поведение"
которых хорошо известны. Никаких классов, шаблонов, исключений и
прочей C++-шной специфики быть не должно, все "урезается" до C.
Указатели на объекты кастятся к <void *>, динамическая память
выделяется и освобождается внутри dll, не покидая ее пределов.

2) COM.
0
smo
0 / 0 / 0
Регистрация: 14.05.2014
Сообщений: 2
15.05.2014, 12:36  [ТС] #3
Спасибо!

А как можно в таком случае передавать структуры?
Глядя на http://msdn.microsoft.com/ru-ru/library/awbckfbz(v=vs.110).aspx я думаю что передавать структуры можно.
0
Убежденный
Ушел с форума
Эксперт С++
15708 / 7218 / 1139
Регистрация: 02.05.2013
Сообщений: 11,637
Записей в блоге: 1
Завершенные тесты: 1
15.05.2014, 19:55 #4
Да, структуры передавать можно.
При условии, что они состоят из известных типов с фиксированным
размером и выравниванием на всех платформах, и что используются
только средства языка C (то есть, никаких public/private, деструкторов,
шаблонов, типов из std/stl и тому подобного).
0
Timur_CF
39 / 39 / 3
Регистрация: 12.12.2013
Сообщений: 227
Записей в блоге: 1
15.05.2014, 20:13 #5
Цитата Сообщение от smo Посмотреть сообщение
Подскажите, пожалуйста куда копать: надо создать DLL на С++ с функциями, структурами и классом так, чтобы её потом можно было подключить к Java и С#.
В Java можно скачать доп. библиотеку WinAPI, а оттуда вызывать твою dll.
0
15.05.2014, 20:13
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.05.2014, 20:13
Привет! Вот еще темы с ответами:

Статическое подключение DLL - C++
Хочу подключить dll в файл при компиляции в VC++ Project -&gt; Settings... -&gt; Вкладка General -&gt; раскрываемый список Microsoft foundation...

Подключение Excel к DLL в Windows 7 64 - C++
#import \ &quot;C:\Program Files(x86)\Common Files\microsoft shared\OFFICE11\mso.dll&quot; \ rename(&quot;DocumentProperties&quot;, &quot;DocumentPropertiesXL&quot;)...

Подключение DLL сделанной на delphi - C++
Всем привет. У меня есть 1) с++ Empty project в студии 2012 2) dll сделанная на Delphi. В dll функция возвращающая integer. Задача...

Подключение dll в MSVS 2010 C++ - C++
Код: __declspec(dllimport) int summe(int a); void main(){ summe(3); } При компиляции выдает следующую ошибку: error LNK2019:...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.