Wizard в этих версиях работает? Не пробовал установку/удаление делать от Администратора с отключенным UAC?в остальных студиях всё работает. UAC я выключаю сразу после установки Windows :) раз и на всегда, но все программы по привычке устанавливаю "от администратора".
А если студию запускать от Администратора?а я и есть администратор :), но если запустить "от администратора", то результат тот же.
error C4430: missing type specifier - int assumed. Note: C++ does not support default-int Что куда прописать чтобы она исчезла, вопрос для тех кто это уже прошел?а это, батенька, несоответствие типов. тут подход индивидуальный. раньше, например, я пользовался переменной long или int, если нужно было узнать размер выборки (acedSSLength), хотя автодеск рекомендовал пользоваться Adesk::Int32. раньше проходило, а теперь лавочку прикрыли. та же беда с булевыми типами. так что еще раз повторюсь, каждая такая ошибка лечится индивидуально.
Где вообще найти быструю и полезную справку как мигрировать на arx 2017. Набираешь например, ошибку и чтобы сразу решение видеть. Есть такая справка у Автодеска?а еще было б неплохо чтоб была база с готовыми исходниками разных функций :):):). натягал к себе в нужном порядке и готово. но, увы, такого нет. а по поводу миграции - есть в справке ARX файлик arxmgr.chm. причем желательно устранять не только то, что уже не работает в текущей версии (описано в этом файлике) а и пытаться избавиться от того, что помечено к удалению в дальнейших версиях (тоже написано в этом же самом файлике). на моей памяти самым болезненным был переход на юникод, вот там даже мануал был и умельцы делали автоматические "перегонные аппараты" для исходников. а сейчас просто смысла нет. код, написанный в 2012 студии будет 100% рабочим в 2015, при условии, что выполнены все предписания по миграции из файлика arxmgr.chm.
21 проект перебрал за час. так что ничего страшного в ошибках нет. просто нужно уметь с ними бороться )))Спасибо! Хотелось бы конструктива как перебирать, что и где менять чтобы так же за час все исправить. Просто таких ошибок в первом же проекте сотни!!! Напишите пожалуйста, конкретно ваш опыт. Для чего этот форум тогда вообще. Прозой делиться? Хотя бы ссылку дайте.
Где вообще найти быструю и полезную справку как мигрировать на arx 2017. Набираешь например, ошибку и чтобы сразу решение видеть. Есть такая справка у Автодеска?Нет. Это вообще не проблема Autodesk. И это не проблема миграции ObjectARX с 2016 на 2017 версию. Это проблема ужесточения требований компилятора С++ в версии 2015.
Хотя бы ссылку дайте.Первая ссылка в Гугле описывает причину появления ошибки и как с ней бороться: https://msdn.microsoft.com/en-us/library/ms173696.aspx
Хотелось бы конструктива как перебирать, что и где менять чтобы так же за час все исправить. Просто таких ошибок в первом же проекте сотни!!!вот если честно, совсем не понял. ну, есть ошибки. и что? исправляем ошибку и становится на одну меньше. и так аж до тех пор, пока проект не соберется в arx-файл.
Для чего этот форум тогда вообще. Прозой делиться?ну, иногда и так получается. вот, например, если человек задает конкретный вопрос, он получает конкретный ответ. а если хочется поговорить о жизни :), то тогда можно и прозой поделиться.
Для чего этот форум тогда вообще. Прозой делиться?Это форум для помощи тем, которые хотят чтобы им помогали. Для тех, кто и сам прикладывает усилия для того, чтобы решить свой вопрос и для этого занимается самообразованием. И для тех, которые готовы помогать другим.
В частности нельзя описывать функцию/метод так:Вот это понятно. Конкретно приведен код - уже помощь. Всегда тебя благодарю!
Что делать?Найти .h файл с методом AcDbDatabase::readDwgFile (это dbmain.h) и прочитать:
// Note that the old overload of this method which took an int _SH_DENYxxxСделать вывод, что вместо _SH_DENYWR следует использовать kForReadAndReadShare, а так как это значение по-умолчанию, то достаточно будет:
// arg is removed. You have to call this method using the OpenMode arg
// to specify the access and sharing. See above OpenMode comments for
// the mapping from _SH_DENYxxx to kXXXShare enum vals.
А какова природа данной ошибкиНе знаю.
Опять несоответствие типов или что-то другое?Вполне возможно.
Что в хелпе миграции на эту тему есть, если есть вообще?С вероятностью 90% это не имеет никакого отношения к ObjectARX.
Ну увижу я этот класc, что в нем искать?Искать operator >>(), смотреть есть ли он, какие параметры принимает и т.д. Не видя кода ничего подробнее сказать не могу.
скорей всего не хватает каких-то инклудов.Не помогло
ps: вообще-то, чтоб точно понять что это за ошибка, нужно знать, что из себя представляет класс VBaseFile.Высылаю полный текст ошибки и сам класс чтобы понять точно ошибку. Надеюсь поможете. Непонятно почему в самом классе VS не находит ошибки? Это так, вопрос для общего развития.
1> cls_base.cpp(1727): note: while trying to match the argument list '(VBaseFile, int)'В коде ты из файла читаешь:
Непонятно почему в самом классе VS не находит ошибки?А в классе нет ошибки - ошибка в использовании класса.
Кстати, если твой код использовался в предыдущих версиях AutoCAD, то значение isClose должно было быть неопределённым.1
Тип Adesk::Boolean isClose;До ObjectARX 2017 это был BOOL (или int), теперь bool.
Для компилятора ошибок нет, но повлияет данная корректировка на что нибудь другое если isClose в других местах еще используется?Может повлиять если в файл писали в предыдущей версии AutoCAD.
Изменения для vs2017 в связи с несоответствием типов не повлияют на компиляцию в vs2010 и vs2012 ? Их просто много, нужно ли в листингах проверку делать на каждый VS?Проверяй. Что будет конкретно в твоем коде я заранее угадать не могу.
Проверяй. Что будет конкретно в твоем коде я заранее угадать не могу.Ну а в принципе чисто замена int и long на Adesk::Int32 ?