C# и lib
От: Jenyay http://jenyay.net
Дата: 11.01.03 13:09
Оценка:
Всем привет. Вот есть такие вопросы.

1. Можно ли к проге на C# как-нибудь приладить файл lib, который предназначен для VC++?
2. Будут ли проблемы в этой же программе при явной загрузке dll, которая написана на Visual Basic (каком-то сравнительно старом). С этой dll в VC++ вроде проблем не было.

Всего хорошего.
... << RSDN@Home 1.0 beta 4 >>
Софт, исходники и фото
Re: C# и lib
От: VladD2 Российская Империя www.nemerle.org
Дата: 11.01.03 18:01
Оценка:
Здравствуйте, Jenyay, Вы писали:

J>1. Можно ли к проге на C# как-нибудь приладить файл lib, который предназначен для VC++?


Можно, но только на MC++.

J>2. Будут ли проблемы в этой же программе при явной загрузке dll, которая написана на Visual Basic (каком-то сравнительно старом). С этой dll в VC++ вроде проблем не было.


А какя разница? VB6 делал ком-объекты. С комом у нэта есть полноценный итероп.
... << RSDN@Home 1.0 beta 4 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[2]: C# и lib
От: Jenyay http://jenyay.net
Дата: 12.01.03 05:55
Оценка:
Здравствуйте, VladD2, Вы писали:

J>>1. Можно ли к проге на C# как-нибудь приладить файл lib, который предназначен для VC++?


VD>Можно, но только на MC++.


А нельзя как-нибудь из dll-ки сделать Lib (как, например, в VC lib.exe)? В C# вообще либы есть?

J>>2. Будут ли проблемы в этой же программе при явной загрузке dll, которая написана на Visual Basic (каком-то сравнительно старом). С этой dll в VC++ вроде проблем не было.


VD>А какя разница? VB6 делал ком-объекты. С комом у нэта есть полноценный итероп.


А если это не COM?
... << RSDN@Home 1.0 beta 4 >>
Софт, исходники и фото
Re[3]: C# и lib
От: DarkGray Россия http://blog.metatech.ru/post/ogni-razrabotki.aspx
Дата: 12.01.03 09:30
Оценка: 6 (1)
Здравствуйте, Jenyay, Вы писали:

J>А нельзя как-нибудь из dll-ки сделать Lib (как, например, в VC lib.exe)? В C# вообще либы есть?


Либ нет. Функции из dll-ек надо руками объявлять, в форуме это уже обсуждалось, посмотри.
В принципе, можешь написать утилиту, которая это будет делать автоматом. Остальные тебе будут очень благодарны

зы
В принципе, можешь поискать, кто-нибудь уже мог написал такое
... << RSDN@Home 1.0 beta 3 >>
Re[4]: C# и lib
От: MikaRSDN Soukhov Stock#
Дата: 12.01.03 11:08
Оценка: 7 (1)
Здравствуйте, DarkGray, Вы писали:

DG>Здравствуйте, Jenyay, Вы писали:


J>>А нельзя как-нибудь из dll-ки сделать Lib (как, например, в VC lib.exe)? В C# вообще либы есть?


DG>Либ нет.


Либы то есть (.netmodule), но они никакого родства не имеют с .lib
Re[5]: C# и lib
От: DarkGray Россия http://blog.metatech.ru/post/ogni-razrabotki.aspx
Дата: 12.01.03 11:15
Оценка:
Здравствуйте, MikaRSDN Soukhov, Вы писали:

MS>Либы то есть (.netmodule), но они никакого родства не имеют с .lib


Это модуль, если это был lib, то он назывался бы .netlib
... << RSDN@Home 1.0 beta 3 >>
Re[4]: C# и lib
От: Jenyay http://jenyay.net
Дата: 12.01.03 13:00
Оценка:
Здравствуйте, DarkGray, Вы писали:

DG>Здравствуйте, Jenyay, Вы писали:


J>>А нельзя как-нибудь из dll-ки сделать Lib (как, например, в VC lib.exe)? В C# вообще либы есть?


DG>Либ нет.


Одни сборки (или как их там)?

DG>Функции из dll-ек надо руками объявлять, в форуме это уже обсуждалось, посмотри.


Да, что-то потакое я видел.

DG>В принципе, можешь написать утилиту, которая это будет делать автоматом. Остальные тебе будут очень благодарны


А хорошая идея. Только не уверен, что руки до нее дойдут.

Ладно, если что придется все ручками подгружать.
... << RSDN@Home 1.0 beta 4 >>
Софт, исходники и фото
Re[6]: C# и lib
От: MaxMP Россия  
Дата: 12.01.03 16:29
Оценка:
Здравствуйте, DarkGray, Вы писали:

DG>Либ нет.


MS>>Либы то есть (.netmodule), но они никакого родства не имеют с .lib


DG>Это модуль, если это был lib, то он назывался бы .netlib


Либы есть. Можно содать (и, наверное, даже юзать — не пробовал) lib'ы с managed кодом внутри.
Re[7]: C# и lib
От: MikaRSDN Soukhov Stock#
Дата: 13.01.03 09:41
Оценка: 6 (1)
Здравствуйте, MaxMP, Вы писали:

MMP>Здравствуйте, DarkGray, Вы писали:


DG>>Либ нет.


MS>>>Либы то есть (.netmodule), но они никакого родства не имеют с .lib


DG>>Это модуль, если это был lib, то он назывался бы .netlib


MMP>Либы есть. Можно содать (и, наверное, даже юзать — не пробовал) lib'ы с managed кодом внутри.


Что ты понимаешь под либами? Если это заглушка для dll, то в Нете есть такие сботки с описаниями (там нет только IL кода)
Если ты понимаешь под либами как то, что компиляется статичеки, то именно .netmodule (там как раз нет блока метаданных и по этому они не могут работать независимо)
Re[4]: C# и lib
От: VladD2 Российская Империя www.nemerle.org
Дата: 13.01.03 20:25
Оценка: 6 (1)
Здравствуйте, DarkGray, Вы писали:

DG>В принципе, можешь написать утилиту, которая это будет делать автоматом. Остальные тебе будут очень благодарны


Это невозможно. В длл-лях и либ-ах нет информации о типах параметров. Парсить же С-шные хэадры глупо при наличии МС++.
... << RSDN@Home 1.0 beta 4 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[5]: C# и lib
От: VladD2 Российская Империя www.nemerle.org
Дата: 13.01.03 20:25
Оценка: 6 (1)
Здравствуйте, MikaRSDN Soukhov, Вы писали:

MS>Либы то есть (.netmodule), но они никакого родства не имеют с .lib


И заодно практически не работают. Попыкта создать контрол на базе этой фичи привела к диким вылетам.
... << RSDN@Home 1.0 beta 4 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[3]: C# и lib
От: VladD2 Российская Империя www.nemerle.org
Дата: 13.01.03 20:25
Оценка: 6 (1)
Здравствуйте, Jenyay, Вы писали:

VD>>А какя разница? VB6 делал ком-объекты. С комом у нэта есть полноценный итероп.


J>А если это не COM?


VB6 неумеет делать не COM. Но если есть не COM длл, ее можно импортировать вручную через атрибут DllImport.
... << RSDN@Home 1.0 beta 4 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[4]: C# и lib
От: Jenyay http://jenyay.net
Дата: 14.01.03 11:28
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>VB6 неумеет делать не COM.


Да она, похоже, на более древнем написана. А что СОВСЕМ не умеет? И именно 6-й.

VD>Но если есть не COM длл, ее можно импортировать вручную через атрибут DllImport.


Это я где-то на форуме видел. Просто там функций много вот и думал, может их как в Lib загнать, прилинковать и все.
... << RSDN@Home 1.0 beta 4 >>
Софт, исходники и фото
Re[8]: C# и lib
От: MaxMP Россия  
Дата: 14.01.03 19:21
Оценка:
Здравствуйте, MikaRSDN Soukhov, Вы писали:

MS>Здравствуйте, MaxMP, Вы писали:


MMP>>Здравствуйте, DarkGray, Вы писали:


DG>>>Либ нет.


MS>>>>Либы то есть (.netmodule), но они никакого родства не имеют с .lib


DG>>>Это модуль, если это был lib, то он назывался бы .netlib


MMP>>Либы есть. Можно содать (и, наверное, даже юзать — не пробовал) lib'ы с managed кодом внутри.


MS>Что ты понимаешь под либами? Если это заглушка для dll, то в Нете есть такие сботки с описаниями (там нет только IL кода)

MS>Если ты понимаешь под либами как то, что компиляется статичеки, то именно .netmodule (там как раз нет блока метаданных и по этому они не могут работать независимо)


Нет, именно .lib. Просто напускаем lib.exe на полученный от cl managed obj и получаем .lib с managed stuff внутри. Но заюзать у меня не получилось, долго правда не копался.
Re[5]: C# и lib
От: Riffell  
Дата: 14.01.03 19:23
Оценка:
Здравствуйте, Jenyay, Вы писали:

J>Здравствуйте, VladD2, Вы писали:


VD>>VB6 неумеет делать не COM.


J>Да она, похоже, на более древнем написана. А что СОВСЕМ не умеет? И именно 6-й.


Теоретически не умеет. Практически — вполне умеет (писалось, что c2.exe в VB — это тот же самый компилятор, что и в VC, только запускаемый "за сценой" с ключом -basic, и это очень похоже на правду), и в сети публиковалась несложная примочка (под названием VB compiler controller). С ее помощью я пробовал создавать обычные DLL'и, линковать к VB куски кода на ассемблере и выделывать прочие будто бы недоступные в VB вещи. Но если использовать чистый VB, без ухищрений, то полученная DLL должна быть на 100% COM'овской.
Re[6]: C# и lib
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 15.01.03 06:08
Оценка:
Здравствуйте, VladD2, Вы писали:

MS>>Либы то есть (.netmodule), но они никакого родства не имеют с .lib


VD>И заодно практически не работают. Попыкта создать контрол на базе этой фичи привела к диким вылетам.


Они то работают. Студия с ними работать не может.
... << RSDN@Home 1.0 beta 4 (developer build)>>
AVK Blog
Re[7]: C# и lib
От: MikaRSDN Soukhov Stock#
Дата: 15.01.03 10:38
Оценка:
Здравствуйте, AndrewVK, Вы писали:

AVK>Здравствуйте, VladD2, Вы писали:


MS>>>Либы то есть (.netmodule), но они никакого родства не имеют с .lib


VD>>И заодно практически не работают. Попыкта создать контрол на базе этой фичи привела к диким вылетам.


AVK>Они то работают. Студия с ними работать не может.


Настоящие программисты не играют в игры, смотрят Футураму и... работают с командной строкой
Re[6]: C# и lib
От: Jenyay http://jenyay.net
Дата: 15.01.03 13:53
Оценка:
Здравствуйте, Riffell, Вы писали:

R>Теоретически не умеет. Практически — вполне умеет (писалось, что c2.exe в VB — это тот же самый компилятор, что и в VC, только запускаемый "за сценой" с ключом -basic, и это очень похоже на правду), и в сети публиковалась несложная примочка (под названием VB compiler controller). С ее помощью я пробовал создавать обычные DLL'и, линковать к VB куски кода на ассемблере и выделывать прочие будто бы недоступные в VB вещи. Но если использовать чистый VB, без ухищрений, то полученная DLL должна быть на 100% COM'овской.


А это относится только к 6-му?

А вообще, у меня это не сом, там даже классов нет — одни функции.
... << RSDN@Home 1.0 beta 4 >>
Софт, исходники и фото
Re[5]: C# и lib
От: VladD2 Российская Империя www.nemerle.org
Дата: 15.01.03 23:18
Оценка: 6 (1)
Здравствуйте, Jenyay, Вы писали:

J>Да она, похоже, на более древнем написана. А что СОВСЕМ не умеет? И именно 6-й.


5-й вроде тоже. Экзешники или КОМ-длли.

J>Это я где-то на форуме видел. Просто там функций много вот и думал, может их как в Lib загнать, прилинковать и все.


Либ-ы это только к МС++ и при каждом вызове бедет переход менеджед/анменеджед.
... << RSDN@Home 1.0 beta 4 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[8]: C# и lib
От: VladD2 Российская Империя www.nemerle.org
Дата: 15.01.03 23:18
Оценка:
Здравствуйте, MikaRSDN Soukhov, Вы писали:

MS>Настоящие программисты не играют в игры, смотрят Футураму и... работают с командной строкой


Значит я не настоящий. Я как раз люблю Кваку, не смотрю футураму и предпочитаю ИДЕ.
... << RSDN@Home 1.0 beta 4 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.