Задать вопрос
  • Почему падает скорость при скачивании торрента через qBittorrent?

    Vapaamies
    @Vapaamies
    Психанул и снес свои ответы не отмечающим решения…
    Если потом скорость всё же восстанавливается, вангую, что файл тупо прописывается нулями. Проблема та же, что и «Диск перегружен» в µTorrent. Лечится назначением прав на обслуживание тома (вроде бы) пользователю, от которого запускается qBittorrent, либо запуском от администратора.
    Ответ написан
    Комментировать
  • Может ли юзер нести ответственность за просматриваемый контент?

    Vapaamies
    @Vapaamies
    Психанул и снес свои ответы не отмечающим решения…
    Есть ли юридическая ответственность за просмотр контента в соц сети ?

    В такой формулировке это уже «мыслепреступление» из известного произведения. Если бы оно существовало, никакой РКН и блокировки были бы не нужны. Хватай любого и сажай, наверняка ведь хоть раз видел порнуху или избиения...

    Поэтому надеюсь, что правильный ответ:
    • Юридическая ответственность за просмотр нарушает базовые свободы прав человека.
    Ответ написан
  • Почему не перекодируется rtsp H265 в rtsp H264?

    Vapaamies
    @Vapaamies
    Психанул и снес свои ответы не отмечающим решения…
    Нагуглил наяндексил:
    $FFMPEG -i $VIDEO_IN -an -c:v ffv1 \
      -vf setrange=limited \
      -pix_fmt yuv420p \
      -color_range jpeg \
      -colorspace smpte170m \
      -color_primaries bt709 \
      -color_trc bt709 \
    out.mkv

    Не оно?

    Мне даже казалось, что буквально недавно был вопрос по FFMPEG как раз про цветовые пространства, но что-то не нашел.
    Ответ написан
    Комментировать
  • Как восстановить HDD (ошибка в данных CRC)?

    Vapaamies
    @Vapaamies
    Психанул и снес свои ответы не отмечающим решения…
    А не неплотное ли прилегание кабеля к разъему это? Или что вместо него в носимых дисках? Так что да, придется открывать коробку, если это диск в коробке, а не с распайкой USB прямо на плате контроллера.
    Ответ написан
    Комментировать
  • Как из одного сегмента вызвать функцию другого сегмента?

    Vapaamies
    @Vapaamies
    Психанул и снес свои ответы не отмечающим решения…
    Если запустить игру, то, с учетом dll библиотек, будут заняты адреса от 0x00010000 до +- 0x7FFE0500.

    Странно видеть подобное утверждение в 2024-м. Что, ASLR в системе глобально отключено?

    У библиотек непременно есть перемещаемые символы («релоки»), и если вы модифицируете exe-шник, они спокойно перелезут на другие адреса при запуске. Так что, это вообще не повод париться.

    Зато мне, вот, странно, что сформированный подобным образом «с дыркой» PE-файл в принципе запустился. Адресное пространство разве не должно быть непрерывным? Всегда казалось, что именно так.
    Ответ написан
    Комментировать
  • Ребят а что нынче с форумами, как лучше сделать?

    Vapaamies
    @Vapaamies
    Психанул и снес свои ответы не отмечающим решения…
    мигрировать на последнюю версию phpbb почистить и закрутить гайки, и опять перепиливать шаблон

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

    Сам я по жизни PunBB-шник со стажем
    Для своих проектов и под свои хотелки движок подпиливал сам, но в 2024 году дошел до уровня, когда придется заказывать уж слишком специальную доработку. За PunBB буду держаться до последнего именно из-за сложности полной замены форумного стека.

    В будущем, вполне возможно, основанная мной компания разработает собственный форумный движок в рамках внутреннего проекта, и тогда я буду стремиться передать его в открытые исходники, либо хотя бы просто сделать доступным всем желающим. Но это будет не скоро.

    Может, кто-то что-то более веселое сможет посоветовать, не знаю. Новый-то форум начать сильно проще, чем со старым барахлом переехать, ничего не потеряв и не деградировав по функциональности.
    Ответ написан
  • Почему при статической линковке DLL к консольной программе на Delphi исключения вызывают ошибки access violation?

    Vapaamies
    @Vapaamies
    Психанул и снес свои ответы не отмечающим решения…
    STDAPI AmsiInitialize(
        _In_  LPCWSTR appName,
        _Outptr_ HAMSICONTEXT* amsiContext);

    В Delphi это разве не stdcall будет?
    DECLARE_HANDLE(HAMSICONTEXT);
    DECLARE_HANDLE(HAMSISESSION);

    По-хорошему нужно бы узнать, как объявлена DECLARE_HANDLE, но с высокой вероятностью на Delphi это объявление должно идти так:
    type
      HAMSICONTEXT = type THandle;
      HAMSISESSION = type THandle;

    Если я прав, последующие объявления типов не нужны — это чисто сишные заморочки. В Delphi возвращаемый описатель логично объявить через var:
    function AmsiInitialize(appName: LPCWSTR; var amsiContext: HAMSICONTEXT): HRESULT; stdcall;
      external 'amsi.dll' name 'AmsiInitialize';
    procedure AmsiUninitialize(amsiContext: HAMSICONTEXT); stdcall;
      external 'amsi.dll' name 'AmsiUninitialize';
    Ответ написан
    1 комментарий
  • Как исправить проблему с mail php и заголовками для gmail?

    Vapaamies
    @Vapaamies
    Психанул и снес свои ответы не отмечающим решения…
    $body .= "Content-Type: text/html; charset=UTF-8\r\n";
    $body .= "Content-Transfer-Encoding: 7bit\r\n\r\n";
    $body .= chunk_split($htmlContent, 998) . "\r\n";

    Меня вот это еще напрягает. Должно быть 8bit. Плюс, возможно, по строгому стандарту строка не должна превышать 76 символов.
    Ответ написан
    1 комментарий
  • Как добавить свой тип группировки в проводнике?

    Vapaamies
    @Vapaamies
    Психанул и снес свои ответы не отмечающим решения…
    На пару с chatgpt писал dll

    Ну, теперь отлаживайте на пару с ChatGPT. Или, может, запускать DLL надо уже не под Windows, а под ChatGPT? Вперед и с песней!

    Могу предположить, что эти колонки — те же строчки, что показываются на вкладке «Дополнительно» в свойствах файла. Я бы нагуглил какое-нибудь расширение «Проводника» с открытыми исходниками, показывающее, скажем данные из тегов MP3-файлов (или что-то такое похожее) и посмотрел бы, как оно сделано. Заодно поставил бы и проверил, появляются ли его строчки в списке для сортировки.
    Ответ написан
    Комментировать
  • Ejabberd dns lookup failed resource temporarily unavailable?

    Vapaamies
    @Vapaamies
    Психанул и снес свои ответы не отмечающим решения…
    "А" записи для домена сменил 3 дня назад.

    Для Jabber вроде же нужны SRV-записи особого вида, не? Например, Яндекс при хосте домена у него добавляет так:
    SRV  _xmpp-server._tcp.conference  21600 IN SRV 20 0 5269 domain-xmpp.yandex.net.  21600
    SRV  _xmpp-server._tcp             21600 IN SRV 20 0 5269 domain-xmpp.yandex.net.  21600
    SRV  _xmpp-client._tcp.conference  21600 IN SRV 20 0 5222 domain-xmpp.yandex.net.  21600
    SRV  _xmpp-client._tcp             21600 IN SRV 20 0 5222 domain-xmpp.yandex.net.  21600
    Ответ написан
    Комментировать
  • Не приходят письма на мэйл. Что делать?

    Vapaamies
    @Vapaamies
    Психанул и снес свои ответы не отмечающим решения…
    Все пишут комменты, а я решил ответ.

    SPF, DKIM mailer1.amocrmmail.com, а From подписан моим доменом. Но поддержка не поддержала и как это исправить не говорит)

    Это явная недоработка amoCRM, трясти надо их. Если, конечно, в настройках отправки почты внутри CRM стоит ваш сервер, а не их.
    Ответ написан
    Комментировать
  • Почему в данном случае не работает обращение к элементам массива по индексу?

    Vapaamies
    @Vapaamies
    Психанул и снес свои ответы не отмечающим решения…
    сразу после первого элемента получаю out of range

    На самом деле, конкретно здесь, скорее всего, поведение отладочной сборки, в которой наверняка {$R+}. Гуглить, читать. Нужно или обернуть данный участок в {$R-}, или пользовать адресную арифметику в виде PMIB_IPNETROW(@ifTable.table)[i].

    Но в си, повторюсь, разницы с массивами нет, поэтому оно там вполне работает и через table[i]

    В Си нет понятия {$R+}, поэтому там сплошь уязвимости, ибо людям свойственно ошибаться.
    Ответ написан
    Комментировать
  • Как расширить том на диске С на виртуальном сервере?

    Vapaamies
    @Vapaamies
    Психанул и снес свои ответы не отмечающим решения…
    Интересно, китайский NIUBI Partition Editor тоже платный?

    В свое время он оказался единственной программой, умеющей расширять раздел за счет свободного места до раздела простым пересчетом NTFS, без перемещения файлов. Не ваш случай, но всё же.
    Ответ написан
    Комментировать
  • Накапливаются задачи ввода-вывода в очереди Qbittorrent, активное время SSD 100%, как исправить?

    Vapaamies
    @Vapaamies
    Психанул и снес свои ответы не отмечающим решения…
    По идее, в расширенных настройках должны стоять галочки:
    • Coalesce reads & writes
    • Use piece extent affinity

    Не помню, включены ли они по умолчанию, но маловероятно, что отключены.

    Еще конкретно для SSD число асинхронных потоков ввода-вывода может как-то влиять, его вроде бы рекомендуют как-то сильно увеличить. Не знаю, никогда не пользовал торренты на SSD.

    А версия libtorrent какая? А то может оказаться, что наилучшее лекарство — перейти на сборку на основе libtorrent 1.x. Если в 2.x они по-прежнему упорото упорно держатся за отображаемые на память файлы, поведение как у вас вполне ожидаемо. Это же торренты, а не файловая СУБД.
    Ответ написан
    6 комментариев
  • Как настроить CMake на установку пакетов?

    Vapaamies
    @Vapaamies
    Психанул и снес свои ответы не отмечающим решения…
    Решил дать дополняющий ответ и оформить его в виде ответа, а не комментария.

    Или "взрослое" решение пишется без пакетного менеджера?

    С точки зрения ведения проектов у пользователя вашего кода должно быть целостное лицо:
    • Или он совсем ничего не понимает и хочет собрать только ваш проект и забыть.
    • Или у него свое настроенное окружение, в котором собираются разные проекты, и ваш будет одним из многих.

    В реальных проектах первый случай обычно бывает на внедрении, когда по каким-то причинам конечному пользователю поставляется исходный код, собираемый затем на месте. Пользователь кода — не программист, своего окружения у него нет и не будет, и ему вполне нормально иметь костыльные по сути зависимости через ваш проект. На внедрении под эти пляски наверняка выделен отдельный комп (или виртуальный сервер), и такой подход ничего не сломает, а жизнь пользователю-непрофессионалу упростит (в теории). На внедрении всякое бывает, короче.

    Во втором же случае подразумевается пользователь-программист, и он как от огня будет бежать от чужих костылей, своими грязными ручонками портящих с трудом и любовью настроенную его собственную среду. И если по каким-то причинам ему всё же потребуется собрать ваш код, вашей маме я бы не позавидовал.

    Мораль в том, что с точки зрения ведения проектов тоже надо уметь смотреть, не только кодить.
    Ответ написан
    Комментировать
  • Как объявить результат метода как TArray?

    Vapaamies
    @Vapaamies
    Психанул и снес свои ответы не отмечающим решения…
    Плохо начинается уже в реализации getVideos

    Потому что массив объектов ≠ массив интерфейсов. При присвоении одиночного объекта переменной-интерфейсу компилятор вставляет свою магию с QueryInterface и всем остальным, и всё работает прозрачно для программиста. А тут надо создавать всё вручную, если требуется возвращать именно массив интерфейсов. Либо же забить на объекты и в массиве держать сразу интерфейсы, предварительно убедившись, что при уничтожении массива они должным образом финализируются.
    Ответ написан
    2 комментария
  • А что делать, когда автор удалит свой репозиторий?

    Vapaamies
    @Vapaamies
    Психанул и снес свои ответы не отмечающим решения…
    Но если вендоров много?

    Вам шашечки или ехать? Количество форков как-то ограничено? Лень кнопки нажимать? Места на винте не хватает?Или это для вас развлечение, а не бизнес? Если бизнес — относиться надо как к бизнесу и работать, а не ныть.

    Я, вот, не поленился своим репам даже зеркалирование на TvoyGit.ru настроить (у него регистрация простая и паспорт для публичных реп не нужен, в отличие от GitFlic). Кстати, популярные проекты вполне могут быть уже там склонированы, кто-то постоянно добавляет новые репы. Можно поискать.
    Ответ написан
    Комментировать
  • Как настроить автоматическое подключение облака mail.ru, yandex.ru по протоколу WebDAV, при перезагрузке?

    Vapaamies
    @Vapaamies
    Психанул и снес свои ответы не отмечающим решения…
    А при создании подключения разве не было галочки типа «Постоянное соединение»?
    Ответ написан
    Комментировать
  • Как на windows server 2022, подключить облако mail.ru по протоколу WebDAV, без ошибки 0x80070043?

    Vapaamies
    @Vapaamies
    Психанул и снес свои ответы не отмечающим решения…
    Комментировать
  • Слетает кодировка Outlook 2019. Как поправить?

    Vapaamies
    @Vapaamies
    Психанул и снес свои ответы не отмечающим решения…
    Это не кодировка, а скорее отрисовка шрифта слетает. Щас пошла мода в приложениях делать отрисовку через DirectX, MS Office как раз с 2019 вроде решил ей следовать. А там какой-то баг в библиотеке Skia (предположительно), из-за чего отрисовка периодически разваливается. Похожее поведение может быть в некоторых сборках хромоподобных браузеров при принудительном включении режима Raw Draw.

    Притягивание Skia к данному случаю — чисто предположение, ни на чем не настаиваю, могу жестко ошибаться.

    Теория: как по виду символов определить источник проблемы

    • ? — текущая (однобайтовая) кодировка в принципе не поддерживает данные символы ← это проблема с кодировкой
    • � — символы были неверно раскодированы/перекодированы при отправке, получении, передаче, чтении... ← это может быть как проблемой с кодировкой (неверно выставленной или определенной), так и багом в ПО
    • □ — с кодировкой всё в порядке, но в шрифте нет нужных символов для отрисовки ← вы находитесь здесь

    Ответ написан
    Комментировать