Только предположения. Подозреваю, что прав на запись в реестр не хватает. По-хорошему, такая программа должна либо инсталлироваться либо первый раз запускаться от администратора. А дальше уже работать от обычного юзера. Если у Вас при каждом запуске ошибка, возможно что-то запрограммировано не совсем правильно. Конкретнее не скажу, с OLE совсем немного общался.
Вот случайно попалось. Посмотрите здесь: https://www.wallpaperengine.io/ Там с обоями каких только штук не вытворяют. Интерактивные тоже можно делать. В Стиме 99 рублей стоит.
Ася, Под рукой сечас виртуалок нет. У VMWare для этого вроде как отдельная утилита. Вот первая попавшаяся из гугла инструкция: https://www.navus.kz/stati/vmware/parametri-seti-v... Там ближе к концу есть про "Host Virtual Network Mapping". Попробуйте.
Артем, Речь не о самом рейде конечно. Его соответствующие варианты именно для надежности придумали. Но Вам же его не в типовых условиях, не в родном окружении использовать надо. У Вас предполагается доступ из другой операционной системы, какие-то виртуалки, между ними то ли сеть, то ли какой-то проброс дисков. А больше компонентов - больше вероятность отказа системы в целом. Я только это имел ввиду.
Владимир Сорокин, В "Раздел изготовителя оборудования" может жить какая-нибудь программуля для создания/восстановления образа системы. Разделы маленькие, сам образ явно не влезет, а вот утилиты какие-нибудь возможно. Обычно такое запускается по нажатию функциональной клавиши при загрузке. Ничего такого особенного при старте нажать не предлагает? Если интересно, то дальше нужно искать информацию по производителю этого самого оборудования. Это ноутбук или фирменный десктоп? Тогда по модели смотреть инструкцию или так гугла и спросить - что за разделы на диске у ...
А в плане их ценности - скорее всего ничего не потеряете если их прибъёте.
Артем Скоробогатый, На страничке скачивания так и должно быть написано - полный дистрибутив, а не дистрибутив обновления. Их редко выкладывают. Проверяйте предыдущие версии. Вроде в январе или декабре был полный дистрибутив.
Или сохраните конфигурацию из рабочей базы.
Или возьмите дистрибутив там, где нельзя говорить.
Артем Скоробогатый, вам точно в эти базы нужно только конфигурацию залить? И там потом с нуля будут работать? Или всё-таки вам туда какие-то данные загрузить нужно (например существующую базу туда переместить). Если первое, то Вам именно про это рассказывают. Если второе, то речь о другом.
Ghost Doc, занятно. Вариант объяснения - не успевает добавить точку и перестроить график между получениями данных. Хотя полсекунды для нынешних компьютеров - уйма времени.
Проверка очень простая. Оставьте добавление точек на график как было, только из ардуино шлите их существенно реже. Если заработает - будет логично. Если вдруг нет - значит всё сложнее.
Но решение разделить эти процессы в любом случае хорошее.
Ghost Doc, результаты такие. Вот тот вариант, что Вы выложили, работет у меня без малейших изменений. Я сначала исходники скомпилировал - всё отлично! Потом Ваш экзешник запустил - ни чуть не хуже. Весело рисуется график. Да, скетч разумеется тоже Ваш.
Единственное, что могу подтвердить, что на винде с русской локалью замена точки на запятую нужна. Без этого у меня выдаётся ошибка: "'1.95' is not a valid floating point value." Почему у Вас его нет - не знаю. Проверьте настройки по пути (пишу для 10.2): Tools - Options - Debugger Options - Embarcadero Debuggers - Language Exceptions. Если на панели Exceptions Types To Ignore есть EConvertError и оно отмечено галкой, то галку снимите или удалите вообще эту строку. Такую ошибку по умолчанию надо показывать. А внизу галка "Notify on language exceptions" должна стоять (мало ли куда делась!)
А что у Вас в целом происходит - непонятно. Есть одна мысль, а собственно Ардуино у Вас какая? Не Леонардо случайно? Я всё тестировал на UNO. Тут в принципе могут быть нюансы. Других идей нет.
Алекс Франц, А как несколько? Синтаксис подразумевает только одно передаваемое значение:
Serial.print(val) либо Serial.print(val, format)
С несколькими Вы либо предварительно помещаете их все в одну строку (массив символов) в нужном формате (для плавающей точки например с помощью dtostrf() ), либо это выглядит как-то так (последний принт с переводом строки):
Serial.print(x);
Serial.print(y);
Serial.println(z);
Ghost Doc, Исходить надо из того, что чудес не бывает :) Давно бы уж поставили в этой процедуре точку останова и посмотрели на все переменные и результаты всех преобразований.
Если написание этой программы для Вас ещё актуально, выложите архив всего дельфи-проекта и скетч на какой-нибудь гугло/яндекс/майлру-диск. Я гляну. Вдруг у Вас на самом деле всё правильно, а проблема допустим в версии дельфи или какая-нибудь аппаратная. Я графики не строил, но уж в мемо у меня точно всё выводилось и в плавающую точку преобразовывалось. Компонент ком-порта, судя по именам в uses и именам методов, у меня такой же.
Ghost Doc, Вы не хотите отвечать про счётчик i - ладно, допустим Вы следите за этой глобальной переменной и она у Вас имеет осмысленное значение. У меня есть предположение, почему Ваша программа не работает. Но если оно верно, то у Вас должно появляться сообщение об ошибке, но Вы об этом ничего не говорите. Я считаю, что у Вас падает преобразование StrToFloat из-за неправильного разделителя целой и дробной части (decimal separator). Посмотрите на число, которое выводится в Memo. Скорее всего оно имеет вид: 123.45 А в русской локализации Windows по умолчанию разделителем является запятая, и функция StrToFloat ожидает число вида: 123,45 Можете отдельно проверить результат работы функции:
a := StrToFloat('123.45'); и a := StrToFloat('123,45');
Первый случай должен давать ошибку, второй - правильный результат.
Если программа не работает из-за этого, то либо просто меняете в полученной строке точку на запятую, либо устанавливаете в Вашей программе DecimalSeparator-ом точку (см. справку Delphi)
Ну как так-то?! Или Вы из тех людей, которые и порно в интернете не найдут? Этих самых примеров по дельфи для чайников в интернете тьма-тьмущая, а по седьмой особенно. И тексты, и видео - всё, что душе угодно!
Ghost Doc, Так, подождите пока с графиком. Вы из ком-порта данные от ардуино получить можете или нет? Если да, то не очень понятно, в чём проблема с ними работать дальше. Если нет, то про это и надо задавать вопрос, не отвлекаясь на графики.
p.s. Ну и конкретно в приведённом кусочке переменная i не инициализирована, и какую строку вы пытаетесь преобразовать - неизвестно. Поправьте, и расскажите, что получилось. Должно либо работать, либо выдавать ошибку.
Собственно всё так и решилось. Сервер оказался в доступности, использовали "нормальные" параметры подключения. Ну а возможность подключения по веб-ссылке - осталась чисто в спортивном интересе. Может когда-нибудь, если будет время, покопаюсь в этом ещё.