![]() |
|
Модераторы: Partizan, gambit |
![]()
|
|
| Darked |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 536 Регистрация: 26.2.2004 Где: Южный Урал Репутация: нет Всего: нет |
Всем доброго времени суток.
Проясниет пожалуйста картину, кому не трудно. Как я понимаю, в CLR проектах уже не получится включить h-файлы nativ с++, которые содержат код на обычном С++? Типа такого:
А как же тогда совмешать код? Все заголовки переписывать? -------------------- Veni, Vidi, Vici !!! |
|||
|
||||
| Exception |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 4525 Регистрация: 26.12.2004 Репутация: 29 Всего: 186 |
В С# вообще такой код недопустим
|
|||
|
||||
| Darked |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 536 Регистрация: 26.2.2004 Где: Южный Урал Репутация: нет Всего: нет |
Да вот, переписать одну dll нужно на CLR C++, ну, естественно, куча типов и данных за ней в h-файлах тянется. Пока не нашел как без h-ок переписать ; ) Пытался делать так:
Так начинают такие ошибки валиться: >...\Microsoft Visual Studio 8\VC\include\vadefs.h(89) : error C3862: '__va_start': cannot compile an unmanaged function with /clr:pure or /clr:safe 1> #pragma unmanaged is in effect 1>...\Microsoft Visual Studio 8\VC\include\vadefs.h(90) : error C3862: '__va_arg': cannot compile an unmanaged function with /clr:pure or /clr:safe 1> #pragma unmanaged is in effect 1>...\Microsoft Visual Studio 8\VC\include\vadefs.h(91) : error C3862: '__va_end': cannot compile an unmanaged function with /clr:pure or /clr:safe 1> #pragma unmanaged is in effect Без pragma же придирается к native объявлениям:
-------------------- Veni, Vidi, Vici !!! |
||||
|
|||||
| Exception |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 4525 Регистрация: 26.12.2004 Репутация: 29 Всего: 186 |
.NET не связан с С++. Поэтому я не вижу смысла переводить под него не-объектноориентированную библиотеку. А вообще, сделай сборку unsafe или пиши на С++/CLI.
|
|||
|
||||
| Darked |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 536 Регистрация: 26.2.2004 Где: Южный Урал Репутация: нет Всего: нет |
В смысле unsafe сборку? Так же не понял насчет CLI/C++ ;( . Я токаначинаю с dot net разбираться.
Библиотека, кстати, объектно-ориентированная должна получиться ;) . -------------------- Veni, Vidi, Vici !!! |
|||
|
||||
| Exception |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 4525 Регистрация: 26.12.2004 Репутация: 29 Всего: 186 |
Ты можешь объяснить, зачем тебе дотнет? Он вот к такой бяке:
вообще винтиться не должен. Лучше уж пиши с нуля - WinAPI в дотнете - плохой тон. В свойствах проекта поищи. Это язык, более близкий к C++, чем C#. Точнее, это и есть C++. |
|||
|
||||
| arilou |
|
|||
![]() Великий МунаБудвин ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2646 Регистрация: 15.7.2004 Где: город-герой Минск Репутация: 21 Всего: 61 |
Darked, тебе надо переписать под дотнет с минимальными затратами, или есть вариант переосмыслить и переписать?
|
|||
|
||||
| Darked |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 536 Регистрация: 26.2.2004 Где: Южный Урал Репутация: нет Всего: нет |
arilou, мне нужно перенести смысл на dot net. Причем шеф сказал так, улыбаясь: "Заодно причеши код." Так что можно считать, что нужно осмыслить и написать тоже самое на dot net, но все равно некотоые старые наработки потянуться и туда, без этого никак. Пока по - другому не вижу. Тем более используются функции из нашего SDK, поэтому без h-ек никак.
[quote=Exception, 21.5.2006, 21:23, post738604]Ты можешь объяснить, зачем тебе дотнет? Он вот к такой бяке: До этого пока руки не дошли ; ) Как я понимаю CLI никаког отношения к С++ не имеет, это просто инфраструктура. А если писать на .Net, то это и так получается CLR проект. -------------------- Veni, Vidi, Vici !!! |
|||
|
||||
| arilou |
|
|||
![]() Великий МунаБудвин ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2646 Регистрация: 15.7.2004 Где: город-герой Минск Репутация: 21 Всего: 61 |
Darked, ну тада в зависимости от объема работ. Переписывай на шарпе, а старые наработки можно вызывать из обычных DLL'ок через P/Invoke.
|
|||
|
||||
| Darked |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 536 Регистрация: 26.2.2004 Где: Южный Урал Репутация: нет Всего: нет |
Ну, шарп я не знаю, да и пожелания заказчика на С++. А объем работ не маленький... -------------------- Veni, Vidi, Vici !!! |
|||
|
||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |