Get LV Class Default Value VI

Простейшие вопросы в области инженерной разработки
rushonda
adviser
adviser
Сообщения: 200
Зарегистрирован: 26 фев 2016, 06:31
Репутация: 0
Версия LabVIEW: 18-19
Контактная информация:

Get LV Class Default Value VI

Сообщение rushonda »

https://github.com/TomsLabVIEWAdventure/IntroToOOP

Тут по ссылке пример работы с камерой на основе класса.
Пока не собираешь в exe все работает. В exe при запуске пишет ошибку. (exe положил рядом с проектом, пути проверил все норм).
Ошибка в "Get LV Class Default Value VI". Все что гугл сказал сделать, пробовал - галочки в настройках ставил - все равно ошибка. Наверняка кто-то сталкивался...
Может кто-то собрать на своей машине?

Artem.spb

Activity Автор
expert
expert
Сообщения: 1934
Зарегистрирован: 31 июл 2011, 23:05
Награды: 2
Репутация: 0
Версия LabVIEW: 12-18
Контактная информация:

Re: Get LV Class Default Value VI

Сообщение Artem.spb »

rushonda писал(а):
17 июн 2020, 17:07
В exe при запуске пишет ошибку. (exe положил рядом с проектом, пути проверил все норм).
какую ошибку?
Может кто-то собрать на своей машине?
Собрать что?
Настройте билд, как вы это ожидаете.
И будет проще, если вы версию укажете.
в Профиле написано 19, хотя 18я открывает ваш проект.

rushonda
adviser
adviser
Сообщения: 200
Зарегистрирован: 26 фев 2016, 06:31
Репутация: 0
Версия LabVIEW: 18-19
Контактная информация:

Re: Get LV Class Default Value VI

Сообщение rushonda »

1) Ошибка 1124.
Get LV Class Default Value.vi<APPEND>

<b>Complete call chain:</b>
Get LV Class Default Value.vi
Camera Selector.vi
Main.vi

<b>LabVIEW attempted to load the class at this path:</b>
D:\Labview\Camera_Image_Picture\Camera_class\Simulation Class\Simulation.lvclass
2) Собрать exe.
3) Это не мой проект - использую как пример его. У меня и 18 и 19 стоят версии (собирал в 19).

Artem.spb

Activity Автор
expert
expert
Сообщения: 1934
Зарегистрирован: 31 июл 2011, 23:05
Награды: 2
Репутация: 0
Версия LabVIEW: 12-18
Контактная информация:

Re: Get LV Class Default Value VI

Сообщение Artem.spb »

rushonda писал(а):
17 июн 2020, 20:01
2) Собрать exe.

настройте билдер, будем чинить. В проекте его нет
3) Это не мой проект - использую как пример его. У меня и 18 и 19 стоят версии (собирал в 19).
зачем нам дебажить чужой проект? Делайте свой, будем чинить.

По симптомам: run-time не хочет грузить класс из сырого файла, нужно его собрать в пакет/библиотеку
Вот тут занимаются решением вашего вопроса.

rushonda
adviser
adviser
Сообщения: 200
Зарегистрирован: 26 фев 2016, 06:31
Репутация: 0
Версия LabVIEW: 18-19
Контактная информация:

Re: Get LV Class Default Value VI

Сообщение rushonda »

Билд настроил.
Вложения
IntroToOOP-master.7z
(1.02 МБ) 7 скачиваний

rushonda
adviser
adviser
Сообщения: 200
Зарегистрирован: 26 фев 2016, 06:31
Репутация: 0
Версия LabVIEW: 18-19
Контактная информация:

Re: Get LV Class Default Value VI

Сообщение rushonda »

зачем нам дебажить чужой проект? Делайте свой, будем чинить.
Мой точно такой же в части камеры, тоже не билдится, симптомы те же.

Artem.spb

Activity Автор
expert
expert
Сообщения: 1934
Зарегистрирован: 31 июл 2011, 23:05
Награды: 2
Репутация: 0
Версия LabVIEW: 12-18
Контактная информация:

Re: Get LV Class Default Value VI

Сообщение Artem.spb »

rushonda писал(а):
18 июн 2020, 11:12
зачем нам дебажить чужой проект? Делайте свой, будем чинить.
Мой точно такой же в части камеры, тоже не билдится, симптомы те же.
билд позже посмотрю, но зайдём с другой стороны.
Зачем грузить классы из внешних файлов? Есть причины не встроить их прямо в exe?

rushonda
adviser
adviser
Сообщения: 200
Зарегистрирован: 26 фев 2016, 06:31
Репутация: 0
Версия LabVIEW: 18-19
Контактная информация:

Re: Get LV Class Default Value VI

Сообщение rushonda »

[/quote]
Зачем грузить классы из внешних файлов? Есть причины не встроить их прямо в exe?
[/quote]

Причин грузить из внешних файлов нет - просто понравилась реализация. Просто странно что надо так глубоко копать чтобы собрать такой простой на первый взгляд билд. Да и интересно все-таки почему не билдится правильно, причем ошибок при билде нет.

Без загрузки классов из файла все работает.

Artem.spb

Activity Автор
expert
expert
Сообщения: 1934
Зарегистрирован: 31 июл 2011, 23:05
Награды: 2
Репутация: 0
Версия LabVIEW: 12-18
Контактная информация:

Re: Get LV Class Default Value VI

Сообщение Artem.spb »

rushonda писал(а):
18 июн 2020, 12:26
. Просто странно что надо так глубоко копать чтобы собрать такой простой на первый взгляд билд. Да и интересно все-таки почему не билдится правильно, причем ошибок при билде нет.
Дело не в билде. Я же написал. Перечитайте ошибку (описание). Файл "неисполняемый". Просто run-time не может выполнять сырой класс, надо его в библиотеку "скомпилировать".

rushonda
adviser
adviser
Сообщения: 200
Зарегистрирован: 26 фев 2016, 06:31
Репутация: 0
Версия LabVIEW: 18-19
Контактная информация:

Re: Get LV Class Default Value VI

Сообщение rushonda »

Т.е. subVI-ку в которой используется Get LV Class Default Value VI скомпилировать в библиотеку? В какую именно библиотеку?

Artem.spb

Activity Автор
expert
expert
Сообщения: 1934
Зарегистрирован: 31 июл 2011, 23:05
Награды: 2
Репутация: 0
Версия LabVIEW: 12-18
Контактная информация:

Re: Get LV Class Default Value VI

Сообщение Artem.spb »

нет, классы надо собрать в пакет.

Blackman

Activity
leader
leader
Сообщения: 929
Зарегистрирован: 17 янв 2016, 15:02
Награды: 1
Репутация: 0
Версия LabVIEW: 6.1,8.5,20
Контактная информация:

Re: Get LV Class Default Value VI

Сообщение Blackman »

В приложении не скомпилированы зависимости классов, которые должны загружаться с диска.
Например для Simulation.lvclass как минимум нет файлов из следующих библиотек:
<vilib>\vision\Basics.llb
<vilib>\vision\Files.llb.

rushonda
adviser
adviser
Сообщения: 200
Зарегистрирован: 26 фев 2016, 06:31
Репутация: 0
Версия LabVIEW: 18-19
Контактная информация:

Re: Get LV Class Default Value VI

Сообщение rushonda »

Artem.spb писал(а):
19 июн 2020, 12:01
нет, классы надо собрать в пакет.
В пакет Package? C содержимым?
Blackman писал(а):
19 июн 2020, 12:50
В приложении не скомпилированы зависимости классов, которые должны загружаться с диска.
Т.е. Labview сам не подтягивает эти файлы?

Так во что все-таки нужно собрать классы, в какой пакет?

(пробовал собрать в библиотеку lvlib - добавил все три класса проекта, не помогло).

Blackman

Activity
leader
leader
Сообщения: 929
Зарегистрирован: 17 янв 2016, 15:02
Награды: 1
Репутация: 0
Версия LabVIEW: 6.1,8.5,20
Контактная информация:

Re: Get LV Class Default Value VI

Сообщение Blackman »

Google->labview plugin architecture
или
What Architecture Should I Use for Scalability and Flexibility in LabVIEW?
https://knowledge.ni.com/KnowledgeArtic ... 000kGQWSA2

Artem.spb

Activity Автор
expert
expert
Сообщения: 1934
Зарегистрирован: 31 июл 2011, 23:05
Награды: 2
Репутация: 0
Версия LabVIEW: 12-18
Контактная информация:

Re: Get LV Class Default Value VI

Сообщение Artem.spb »

rushonda писал(а):
22 июн 2020, 08:58
Так во что все-таки нужно собрать классы, в какой пакет?
как-то мутно всё. Собирать так
lib.PNG
А тут инструкция по использованию в проекте.
Во только я не нашёл, как из библиотеки получить список файлов.
К тому же при запуске ругается на отсутствие зависимостей - тех самых vision библиотек.
И подозреваю, что не полуится их впихнуть в сборку ,т.к. vision денег немалых стоит, а так можно было бы собрать пакет и распространять куда попало...

Ответить

Вернуться в «Для чайников»