Как подключить библиотеку VC++(v6) к проекту на C#?
От: 2_amigos Россия  
Дата: 16.01.07 07:09
Оценка:
Как подключить библиотеку VC++(v6) к проекту на C#?
Re: Как подключить библиотеку VC++(v6) к проекту на C#?
От: 2_amigos Россия  
Дата: 16.01.07 07:17
Оценка:
up
Re[2]: Как подключить библиотеку VC++(v6) к проекту на C#?
От: 2_amigos Россия  
Дата: 16.01.07 07:26
Оценка:
Подскажите где об этом можно почитать?
Желательно на русском!
Re[3]: Как подключить библиотеку VC++(v6) к проекту на C#?
От: Блудов Павел Россия  
Дата: 16.01.07 08:41
Оценка:
Здравствуйте, 2_amigos, Вы писали:

Добавьте прямо в нее обёртку на c++/clr и просто добавьте в references к своему c# проекту.
... << RSDN@Home 1.2.0 alpha rev. 642>>
Re: Как подключить библиотеку VC++(v6) к проекту на C#?
От: vitz  
Дата: 16.01.07 08:42
Оценка:
Здравствуйте, 2_amigos, Вы писали:

_>Как подключить библиотеку VC++(v6) к проекту на C#?

*.lib — никак, есть варианты с обертками на MC++, то есть к нему прилинковать мона но у меня былы грабли с new
*.dll — PInvoke
Re[2]: Как подключить библиотеку VC++(v6) к проекту на C#?
От: 2_amigos Россия  
Дата: 16.01.07 09:12
Оценка:
Здравствуйте, vitz, Вы писали:

V>Здравствуйте, 2_amigos, Вы писали:


_>>Как подключить библиотеку VC++(v6) к проекту на C#?

V>*.lib — никак, есть варианты с обертками на MC++, то есть к нему прилинковать мона но у меня былы грабли с new
V>*.dll — PInvoke

А в чем разница между *.lib и *.dll? У меня есть и то, и другое:rsidll32.dll и rsidll32.lib
Re[3]: Как подключить библиотеку VC++(v6) к проекту на C#?
От: 2_amigos Россия  
Дата: 16.01.07 09:29
Оценка:
Есть ли подробные интсрукции по подключению?
Re[3]: Как подключить библиотеку VC++(v6) к проекту на C#?
От: vitz  
Дата: 16.01.07 09:48
Оценка:
Здравствуйте, 2_amigos, Вы писали:

_>А в чем разница между *.lib и *.dll? У меня есть и то, и другое:rsidll32.dll и rsidll32.lib

*.lib статическая библиотека
*.dll динамическая
Re[4]: Как подключить библиотеку VC++(v6) к проекту на C#?
От: 2_amigos Россия  
Дата: 16.01.07 09:57
Оценка:
Здравствуйте, vitz, Вы писали:

V>Здравствуйте, 2_amigos, Вы писали:


_>>А в чем разница между *.lib и *.dll? У меня есть и то, и другое:rsidll32.dll и rsidll32.lib

V>*.lib статическая библиотека
V>*.dll динамическая

Так что лучше использовать?
Re[4]: Как подключить библиотеку VC++(v6) к проекту на C#?
От: Morpheus_  
Дата: 16.01.07 10:01
Оценка:
Здравствуйте, 2_amigos, Вы писали:

_>Есть ли подробные интсрукции по подключению?


вот она:
[DllImport("mybest.dll")]
static public extern void MyBestFunction();


... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[5]: Как подключить библиотеку VC++(v6) к проекту на C#?
От: 2_amigos Россия  
Дата: 16.01.07 10:09
Оценка:
Здравствуйте, Morpheus_, Вы писали:

M_>Здравствуйте, 2_amigos, Вы писали:


_>>Есть ли подробные интсрукции по подключению?


M_>вот она:

M_>
M_>[DllImport("mybest.dll")]
M_>static public extern void MyBestFunction();
M_>


M_>


А как насчет таких структур из библиотеки? Как их использовать в C# проекте?
// Basic types
typedef struct { } __RSI_CHANNEL; // DO NOT RELY ON THE DEFINITION OF RSI_CHANNEL
typedef __RSI_CHANNEL FAR* RSI_CHANNEL; // channel handle
Re[5]: Как подключить библиотеку VC++(v6) к проекту на C#?
От: vitz  
Дата: 16.01.07 10:50
Оценка:
Здравствуйте, 2_amigos, Вы писали:

_>Так что лучше использовать?

Не в лучше дело, а том что вам надо получить
*.lib — Статическая библиотека, это значит что она содержит код который при линковке будет добавлен в вашь модуль. С# такого не понимат, тем более, что *.lib содержит native код. Но такой вариант прокатит в MC++ так он (MC++) позволяет жудкий винигрет из native и MSIL.
Хотя в вашем случае *.lib используется для экспорта функций(и еще чего-то там...) из *.dll, содержит код для вызова функций из *.dll что бы проще жилось так сказать, прилинковал такую либу к проекту и пользуешься, а готовый модуль *.dll пользует.
Как сказали выше, вам подойдет PInvoke (если только вы не хотите использовать классы определенные в библиотеке), а структуы прийдется описать еще раз, но уже в C#
Да, кстати по поводу примеров кода, поиск рулит ключевое слово PInvoke
Re[6]: Как подключить библиотеку VC++(v6) к проекту на C#?
От: 2_amigos Россия  
Дата: 16.01.07 11:49
Оценка:
PInvoke
Re[6]: Как подключить библиотеку VC++(v6) к проекту на C#?
От: Morpheus_  
Дата: 16.01.07 12:39
Оценка:
Здравствуйте, 2_amigos, Вы писали:

_>>>Есть ли подробные интсрукции по подключению?


M_>>вот она:

M_>>
M_>>[DllImport("mybest.dll")]
M_>>static public extern void MyBestFunction();
M_>>


M_>>


_>А как насчет таких структур из библиотеки? Как их использовать в C# проекте?

_>// Basic types
_>typedef struct { } __RSI_CHANNEL; // DO NOT RELY ON THE DEFINITION OF RSI_CHANNEL
_>typedef __RSI_CHANNEL FAR* RSI_CHANNEL; // channel handle

public struct __RSI_CHANNEL
{
    //...
}

[DllImport("mybest.dll")]
static public extern void PassMyStruct(ref __RSI_CHANNEL val);
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[7]: Как подключить библиотеку VC++(v6) к проекту на C#?
От: vitz  
Дата: 16.01.07 13:24
Оценка:
Здравствуйте, 2_amigos, Вы писали:

_>PInvoke

Ну тогда не используй Native либу
Re[3]: Как подключить библиотеку VC++(v6) к проекту на C#?
От: Odi$$ey Россия http://malgarr.blogspot.com/
Дата: 16.01.07 14:51
Оценка:
Здравствуйте, 2_amigos, Вы писали:

_>Подскажите где об этом можно почитать?

_>Желательно на русском!

http://rsdn.ru/?article/dotnet/coopdll.xml
Автор(ы): Алексей Дубовцев
Дата: 22.10.2001
... << RSDN@Home 1.2.0 alpha rev. 669>>
Re: Как подключить библиотеку VC++(v6) к проекту на C#?
От: Аноним  
Дата: 17.01.07 07:07
Оценка:
Здравствуйте, 2_amigos, Вы писали:

_>Как подключить библиотеку VC++(v6) к проекту на C#


Можно попользовать SWIG http://www.swig.org.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.