• Как превратить VPS в прокси-сервер, если уже поднял OpenVPN?

    @neosapient Автор вопроса
    VC9, VC11, QT4, QT5, MySQL
    Порывшись на форуме openvpn.net, нашел несколько сообщений, что для моего случая надо
    1) Включить настройку в server.ovpn файле
    push "redirect-gateway def1 bypass-dhcp"
    Это заставит трафик на стороне домашнего ноутбука искать выход в интернет внутри поднятой локальной сети.
    2) Установить NAT на VPS сервер.

    Попробовал установить NAT на Windows 2016: связка OpenVPN + NAT не заработала.
    Снес Windows 2016.

    Затем попробовал установить Windows 2012, на него поставил OpenVPN + NAT = связка заработала! Я виден в интернете с ip-адресом моего VPS-сервера.
    Ответ написан
    Комментировать
  • Routing and Remote Access не доступны настройки?

    @neosapient
    VC9, VC11, QT4, QT5, MySQL
    1) Нажмите All Tasks -> Stop
    2) Нажмите "Disable Routing and Remote Access"

    Это сбросит настройки, и станет доступен "Configure and Enable Routing and Remote Access"
    (возможно потребуется перезагрузка)
    Ответ написан
    Комментировать
  • Как заполнить QTableWidget данными JSON?

    @neosapient
    VC9, VC11, QT4, QT5, MySQL
    Здравствуйте

    Ссылки для QTableWidget
    - описание класса QTableWidget на русском и на английском
    - статья "Программирование модель/представление" на русском и на английском
    - несколько глав из книги Жасмин Бланшет, Марк Саммерфилд "Qt 4. Программирование GUI на С++". Там полноценный разбор работы с QTableWidget
    - так же смотрите примеры %Qt%\Examples\Qt-5.13.0\widgets

    Ссылки для QJson
    - описание классов QJsonDocument, QJsonObject и QJsonArray на английском
    - статья на Хабре
    Ответ написан
    Комментировать
  • Компиляция в QT?

    @neosapient
    VC9, VC11, QT4, QT5, MySQL
    По первому вопросу:
    Можно попробовать поставить 32 битную сборку "Desktop Qt 5.12.1 MSVC2017 32bit". А на Windows XP поставить Microsoft Visual C++ Runtime 2017.

    По второму вопросу:
    В *.pro файле проекта надо прописать путь к внешней библиотеке:
    LIBS += -L"path/to/library/directory"
    Ответ написан
    2 комментария
  • С чем работать на C++ в Linux Mint?

    @neosapient
    VC9, VC11, QT4, QT5, MySQL
    Ставь в качестве компилятора gcc, а в качестве среды разработки Qt Creator.
    У меня эта связка сейчас на Linux Mint 19 стоит.
    Ответ написан
    1 комментарий
  • Чем VPS отличается от VDS?

    @neosapient
    VC9, VC11, QT4, QT5, MySQL
    Сейчас синонимы.

    Ранее в конце 90х
    VPS - железо принадлежит хостеру, место на стойке принадлежит хостеру. Вы арендуете железо и место, а так же оплачиваете трафик и электроэнергию. Кроме того, специально обученый парень по команде бегает перегружать комп.
    VDS - железо принадлежит вам, место на стойке принадлежит хостеру. Вы отдаете своё железо и арендуете под него место (чтобы сервер не стоял в квартире), а так же оплачиваете трафик и электроэнергию. Кроме того, специально обученый парень по команде бегает перегружать комп. Плюс был в том, что железо могло быть куплено вами без наценок хостера (под ваши задачи, нужной мощности).
    Ответ написан
    2 комментария
  • Как через DLLmain запустить фоновый код?

    @neosapient
    VC9, VC11, QT4, QT5, MySQL
    Здравствуйте.
    Некая программа запускает процесс. Процесс загружает метод из вашей DLL и выполняет этот метод.
    Процесс может делать что угодно, вплоть до того, что может выгрузить вашу DLL из памяти. Или может завершиться сам, тем самым выгрзившись из памяти.

    Что делать?
    Написать собственную программу (с сервером и плюшками), которая будет работать обособленно.
    А ваша DLL должна лишь запускать эту вашу программу отдельным процессом CreateProcess().
    https://docs.microsoft.com/en-us/windows/desktop/a...
    Ответ написан
  • Фрилансеру нужно оформлять ип или можно просто платить 3 ндфл?

    @neosapient
    VC9, VC11, QT4, QT5, MySQL
    Я дилетант, и могу ошибиться с ответом.

    ИП рискует всем своим имуществом. Договор должен быть составлен таким образом, чтобы к тебе не могли прикопаться.
    Сравнение налоговых режимов для ИП на сайте налоговой https://www.nalog.ru/rn78/ip/ip_pay_taxes/compare/

    Онлайн кассы требуются для работы с физ. лицами на территории России при оплате по карте, электронными платежными системами или наличкой, чтобы давать чеки в течении 5 минут. (Оплата на территории России может быть только в рублях)
    Есть список деятельности, где кассы обязательны с 1 июля 2018 (в основном сфера еды), а с 1 июля 2019 для остальных тоже.
    Онлайн касса не нужна: (тут меня надо будет проверить к 1 июля 2019)
    - если физ.лицо произвело оплату за пределами России. (соответственно, оплата валютой).
    - при работе с юр.лицами,
    - при оплате через банковский расчетный счет.

    Сейчас ситуация выглядит так.
    1) Можно остаться физ.лицом.
    Дополнительные издержки: Крайне желательно иметь договора с клиентом, чтобы потом объяснить банку, откуда деньги. Иначе банк заблокирует счета и ЦБ добавит в черный список.
    Платить НДФЛ 13%. Отчислений в пенсионный фонд нет.

    2) Можно стать ИП на упрощенной системе налогообложения. При регистрации ИП специально надо указать, что хочешь перейти на УСН доходы 6%. Предельный доход за год до 150 млн рублей. (Нанять можно не более 100 работников)
    Дополнительные издержки: онлайн кассы. Если ИП прогорел - рискуешь своим имуществом.
    Платить УСН с доходов 6% (либо налогооблагаемой базой можно взять "доходы - расходы", тогда 15%) надо каждый квартал. Пенсионные отчисления в фиксированном размере, плюс 1% свыше 300 т.р.

    3) Можно оформить ИП на патенте для осуществления какой-либо деятельности. Патент приобретается на определенный срок от месяца до года. (Нанять можно не более 15 работников.)
    Список деятельности сильно ограничен и может меняться от района к району - надо уточнять в районной налоговой. Стоимость патентов тоже варьируется от района к району. Работать по патенту можно только внутри района с жителями района. Пересек улицу и там другой район - извольте купить второй патент.
    Дополнительные издержки: онлайн кассы. Если ИП прогорел - рискуешь своим имуществом.
    Покупка патента и есть налог. Пенсионные отчисления в фиксированном размере, плюс 1% свыше 300 т.р.

    3*) Есть ещё ЕНВД. Этот налоговый режим для сферы еды и курьеров - список профессий ограничен. К IT имеет слабое отношение, по этому не разбирался.

    4) Оформится самозанятым. Список доступных профессий ещё меньше чем у патента. Предельный доход за год до 2.4 млн. рублей. (Работаешь только сам, наемных работников быть не может.)
    Платить 4% если клиент физ.лицо и 6% если клиент юр.лицо.
    Оплата в налоговую с каждой клиентской платежки через специальное приложение для смартфона. Отчислений в пенсионный фонд нет.
    Ответ написан
    Комментировать
  • Нестандартный вольтаж GT 525M. Есть ли возможность исправить?

    @neosapient
    VC9, VC11, QT4, QT5, MySQL
    Идея только в замене биоса.
    Недавно наткнулся на статью для Dell Inspiron 15R
    itdell.ru/view_article.php?n=227
    Ответ написан
    Комментировать
  • Какие есть варианты заданий для начинающего программиста на Qt?

    @neosapient
    VC9, VC11, QT4, QT5, MySQL
    >> нужна практика по решению каких либо тривиальных заданий

    Вам для чего Qt? Для быстрого прототипирования офисных программок?

    Тогда ставлю следующие задачи:
    В данной библиотеке неплохо реализован паттерн Model-View-Controller.
    Сделайте модель таблицы с полями <ФИО, дата рождения>. (смотри QAbstractItemModel и наследники; для простоты возьмите QStandardItemModel)
    Далее, сделайте представление, которое отображает таблицу <ФИО, дата рождения>. (смотри QTableView)
    И сделайте второе представление, которое отображает таблицу <ФИО, возраст> (смотри работу с делегатами)
    Ну и наконец, добавьте редактирование полей таблицы через первое представление. Т.е. чтобы в первой вьюхе можно было поменять дату, и тогда автоматически обновлялся возраст во второй вьюхе.

    Для мотивировки, сроки и условия будут как на обычной работе в офисе, т.е.: "Сдать надо было ещё вчера. Выполнять!"
    Ответ написан
    Комментировать
  • Как отправить http запрос с помощью QNerworkAccessManager в с++?

    @neosapient
    VC9, VC11, QT4, QT5, MySQL
    Как знать, может ваш код работоспособен за исключением одной маленькой ошибки - такого url как 'http: //qt.nokia.com' более не существует. Попробуйте обращаться к 'www.qt.io'

    net_test.pro
    QT += core
    QT -= gui
    QT += network
    CONFIG += c++11
    
    TARGET = net_test
    CONFIG += console
    CONFIG -= app_bundle
    
    TEMPLATE = app
    
    SOURCES += main.cpp \
        test.cpp
    
    HEADERS += \
        test.h


    test.h
    #ifndef QXTEST_H
    #define QXTEST_H
    
    #include <QObject>
    
    class QNetworkReply;
    
    class QxTest: public QObject
    {
        Q_OBJECT
    public:
        QxTest();
    public slots:
        void replyFinished(QNetworkReply* rep);
    };
    
    #endif // QXTEST_H


    test.cpp
    #include <QNetworkRequest>
    #include <QNetworkReply>
    #include <QUrl>
    #include <QNetworkAccessManager>
    #include "test.h"
    
    QxTest::QxTest()
    {
        QNetworkAccessManager *manager = new QNetworkAccessManager(this);
        connect(manager, SIGNAL(finished(QNetworkReply*)),
                this, SLOT(replyFinished(QNetworkReply*)));
    
        manager->get(QNetworkRequest(QUrl("http://www.qt.io")));
    
    }
    
    void QxTest::replyFinished(QNetworkReply* rep)
    {
        qDebug() << rep->readAll();
    }


    main.cpp
    #include <QCoreApplication>
    #include "test.h"
    
    int main(int argc, char *argv[])
    {
        QCoreApplication a(argc, argv);
        QxTest test;
        return a.exec();
    }
    Ответ написан
  • Что использовать в Qt close() или destroy()?

    @neosapient
    VC9, VC11, QT4, QT5, MySQL
    Идея такая:
    - покажите клиенту форму для ввода данных
    - клиент заполняет эту форму и нажимает OK
    - вы обрабатываете сигнал о закрытии окна и скрываете его
    - далее, метаданные из окна никуда не делись, вы можете продолжить их использовать. (ну например это было окно настроек программы и вы сохраняете данные на диск).
    - как только решите, что никакие данные из этого окна более не нужны, то смело уничтожайте его.
    Ответ написан
    2 комментария
  • Есть ли компонент для Джумлы которые выводит просто информацию?

    @neosapient
    VC9, VC11, QT4, QT5, MySQL
    Здравствуйте.

    Предлагаю тогда отказаться от компонентов вообще и пользоваться модулями. Есть такой тип модуля, как html. В нем можно выводить любой html-текст

    Идея такая:
    - редактируете шаблон сайта и добавляете позицию (назовем её position-html).
    - далее, создайте несколько пунктов меню. Возможно потреюуется создать пустой материал, на который будут ссылаться эти пункты меню.
    - и наконец, надо создать несколько html-модулей. Для каждый модуля указать свой пункт меню, на котором этот модуль должен отображаться.
    Ответ написан
    Комментировать
  • Искусственный Интеллект - книги, лекции, сайты?

    @neosapient
    VC9, VC11, QT4, QT5, MySQL
    С. Хайкин "Нейронные сети. Полный курс". 2-е издание, издательство Prentice Hall

    Я в своё время перерыл весь Питер, чтобы эту книгу найти )) В продаже был только 1 экземпляр на весь город.
    В тот момент когда всё таки её купил - осознал, что значил Дефицит в СССР, и что значило 'достать книгу'

    rutracker.org/forum/viewtopic.php?t=1620350
    Ответ написан
    1 комментарий
  • Как заполнить пробелы в знаниях?

    @neosapient
    VC9, VC11, QT4, QT5, MySQL
    Иногда легче учить что то новое с нуля, а не переучиваться. )

    Что касается алгоритмов, порекомендую курс видеолекций
    "Школа анализа данных. Алгоритмы и структуры данных поиска. Лекции и курсы от Яндекса"
    rutracker.org/forum/viewtopic.php?t=4640452

    Возможно они где то на официальном сайте лежат https://yandexdataschool.ru/ но я ссылки быстро не нашел

    Что касается ООП - совет будет зависить от выбранного вами языка
    Ответ написан
    3 комментария
  • На каком этапе разработки принято брать предоплату?

    @neosapient
    VC9, VC11, QT4, QT5, MySQL
    Подготовка технического задания очень важна.
    Если грамотно подходить, то это отдельная должность. И труды специалиста на этой должности стоят денег.

    Сколько брать зависит от ситуации. Если клиент новый, то возмите 10%.
    Ответ написан
  • Как преобразовать 1 байт и 0,5 байта в 1,5 байта(Более подробно в описании)?

    @neosapient
    VC9, VC11, QT4, QT5, MySQL
    Скроме структур есть ещё объединения (union)
    #pragma pack(push,1)
    union{
      int value;
      struct {
        unsigned char b1;
        unsigned char b2;
        unsigned char b3;
        unsigned char b4;
      }
    };
    #pragma pack(pop)

    теперь к каждому байту можно обращаться по имени b1, b2, b3, b4

    А в остальном, учите побитовые операции |, &, ^, а так же побитовый сдвиг <<, >>
    Ответ написан
    3 комментария
  • Почему Joomla не меняет шаблоны в менеджере?

    @neosapient
    VC9, VC11, QT4, QT5, MySQL
    Здравствуйте, Денис.

    Попробуйте создать отдельный пункт меню для заданной страницы. И в режиме редактирования свойств для данного пункта меню попробуйте указать нужный шаблон.

    Если не поможет, тогда откройте материал (т.е. статью) и в редактирования свойств для данноого материала укажите нужный шаблон.
    Ответ написан
    Комментировать
  • Где найти документацию по шаблонам Joomla?

    @neosapient
    VC9, VC11, QT4, QT5, MySQL
    Здравствуйте, Андрей.

    Поиск статей можете начать по ссылкам на странице
    https://docs.joomla.org/Portal:Template_Development

    Конкретно порекомендую три статьи
    - https://docs.joomla.org/Creating_a_basic_index_file
    и
    - https://docs.joomla.org/Creating_a_basic_templateD...
    либо
    - https://docs.joomla.org/Creating_a_basic_Joomla!_t...

    Сначала делаете статичную страницу в .html
    Дальше её переименовываете в .php
    И заменяете куски кода ( https://docs.joomla.org/Creating_a_basic_index_file )
    - в заголовке прописать <?php defined( '_JEXEC' ) or die( 'Restricted access' );?> и т.д.
    - там где основной блок данных надо вставить
    - во всех второстепенных блоках данных надо вставить
    (подразумевается, что имена позициям придумываете сами, например "position-1" или "bottom")

    Далее надо сообщить самой джумле, что есть эти самые позиции. Для этого формируется templateDetails.xml ( https://docs.joomla.org/Creating_a_basic_templateD... )

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

    P.S.
    Если что то не выходит - берете шаблон из папки templates и сравниваете со своим кодом.

    P.P.S.
    А вообще ищите видеоуроки по разработке шаблонов на ютубе или торрент трекерах. Их там должно быть много. За неделю базовые вещи по разработке шаблонов под джумлу учаться спокойно.

    P.P.P.S.
    В джумле 3.х саму CRM отделяют от API
    Описание объектов можно посмотреть по ссылке
    https://api.joomla.org/cms-3/index.html

    Например для объекта JDocumentHTML
    https://api.joomla.org/cms-3/classes/JDocumentHTML.html
    Смотрите свойства (Properties) объекта JDocumentHTML
    - description
    - template
    - title
    - link
    и т.д.
    Ответ написан
    Комментировать
  • Какую фантастику порекомендуете, где главный герой программист/инженер?

    @neosapient
    VC9, VC11, QT4, QT5, MySQL
    "Дверь в лето", Роберт Хайнлайн
    fantlab.ru/work2793
    Ответ написан
    Комментировать