Maximus

Пользователи
  • Публикаций

    76
  • Зарегистрирован

  • Посещение

  • Победитель дней

    7

Maximus стал победителем дня 1 июня

Maximus имел наиболее популярный контент!

Информация о Maximus

  • Звание
    Продвинутый пользователь

Контакты

  • Сайт
    www.netlights.ru

Информация

  • Пол
    Мужчина
  • Город
    Воронеж

Посетители профиля

695 просмотров профиля
  1. Не подойдёт? http://docwiki.embarcadero.com/Libraries/Berlin/en/FMX.Graphics.TBitmap.FlipHorizontal
  2. Maximus

    Версия Starter

    https://www.embarcadero.com/ru/products/delphi/product-editions
  3. Maximus

    Заливка

    Да, прямоугольника, а вам что нужно, полигон? http://docwiki.embarcadero.com/Libraries/Tokyo/en/FMX.Graphics.TCanvas.FillPolygon
  4. Maximus

    Заливка

    А http://docwiki.embarcadero.com/Libraries/Tokyo/en/FMX.Graphics.TCanvas.FillRect не подходит?
  5. Maximus

    Развертывание приложения с FireDAC и SQLite

    Сделайте тестовое приложение, без функционала, только подключение к базе с одной таблицей и выводом данных из неё. Если она у ваших тестеров заработает, значит косяк в вашем приложении. Если не заработает, то скините проект сюда.
  6. Maximus

    Развертывание приложения с FireDAC и SQLite

    Чистая ХР, откуда там взяться этой библиотеке? Она не поставлялась вместе с виндой. Проверил, её там действительно нет.
  7. Maximus

    Развертывание приложения с FireDAC и SQLite

    А откуда вообще взялась информация о том, что для работы приложения необходимо с ним таскать библиотеку sqlite? Беру чистый образ Win XP, на нём не должно быть этой библиотеки, кидаю туда своё приложение, работающее с sqlite через FireDAC, и всё работает. Что я делаю не так?
  8. http://docwiki.embarcadero.com/Libraries/Tokyo/en/System.Classes.TThread.Synchronize Судя по документации, если передать первым параметром поток, то в дальнейшем в основном потоке можно будет определить какой из дополнительных потоков вызвал метод. Если это не требуется, то можно ничего не передавать.
  9. Maximus

    NetHTTPClient UserAgent

    Активно использую Post с двумя параметрами: адрес и список параметров. На стороне скрипта специально useragent не проверял, но по логам он всегда присутствует и никаких проблем с ним нет.
  10. Прям немедленно остановить нельзя, но можно вызвать метод Cancel var Task : ITask; ... Task := TTask.Run(...); ... Task.Cancel; //когда нужно остановить А внутри таска сделать проверки, что если выполняется Task.Status = TTaskStatus.Canceled то не нужно обновлять данные, там где вы их обновляете и досрочно закончить работу кода таска.
  11. Смотря к каким данным вы обращаетесь. На самом деле синхронизировать нужно любые обращения к разделяемым ресурсам. Если теми данными, что на форме или где-то ещё, пользуется другой поток, то доступ к ним должен быть синхронизирован. Если вы их только читаете, измениться они не могут и делаете это только в показанном потоке, то можно не синхронизировать Но вот это же точно визуальный элемент? Form1.ConnectImage.Bitmap := Form1.IconList.Bitmap(Size, localicon); Тогда это уже менее страшно, я почему-то подумал, что обращение идёт через HTTP. TCPClient не имеет такой возможности, только самостоятельно потоки делать.
  12. На первый взгляд можно заметить следующее: 1. Обращение к форме из потока без синхронизации l := Length(Form1.RoomElements); E := Form1.RoomElements[j]; Так делать нельзя. SendHTTPMessage - тоже самое. 2. Таймер не останавливается на время работы потока, судя по всему. Если поток не успеет отработать за секунду, как вы написали, может запуститься второй и третий. Возможно так и задумано, но если учесть, что все они обращаются к форме без синхронизации всё это печально кончится. 3. У вас сколько объектов по которому цикл проходит каждую секунду? И для каждого объекта вызывается Get запрос на веб сервер? Бедный сервер. Данные нужно получать сразу для всех объектов, и уже в клиенте разбирать, что вам нужно, а что нет. А иначе ваши клиенты положат вам ваш же сервер рано или поздно. 4. Уже несколько версий существует TNetHttpClient и THTTPClient, которые могут асинхронно отправлять запросы на веб сервер, а значит поток вообще создавать не нужно.
  13. Maximus

    Как подавить экранный курсор crSQLWait ?

    На самом деле это поведение можно достаточно просто отключить var Connect : TFDConnection; Query : TFDQuery; ... Connect.ResourceOptions.SilentMode := true; Query.ResourceOptions.SilentMode := true; ...
  14. Maximus

    ToolTip

    Да, нужно либо обновиться на Токио, либо применить фикс, который есть в комментариях на первой странице. На торрентах бесплатно продают, скачайте и вынимайте оттуда любые модули, которые нужны.