Russian Qt Forum
Ноябрь 01, 2024, 01:57 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало Форум WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  
  Просмотр сообщений
Страниц: [1]
1  Компиляторы и платформы / Windows / Re: WinAPI MoveWindow не работает в Win 10 : Октябрь 26, 2020, 13:41
Господа, уж просите меня, мне так стыдно! Пример я наваял поторопившись, а как раз-таки с блокнотом всё хорошо работает. Не работает с другим софтом. Кому интересно, вот c этим реально НЕ работает: https:// www .acelab. ru /dep.pc/download/PC3000DiskAnalyzer.zip

И проблему я решил, надо было запускать exe от имени администратора. Добавил с сборку манифест и теперь всё хорошо. Вероятно, чтобы двигать чужие окна, запущенные от имени админа, нужно самому иметь права админа.
2  Компиляторы и платформы / Windows / Re: WinAPI MoveWindow не работает в Win 10 : Октябрь 24, 2020, 13:28
Вы находите 1 окно с таким заголовком, двигаете его на 1 позицию, затем находите следующее окно и его двигаете, уже на новую позицию. Всё, как задумывалось в коде.

Я прекрасно понимаю как оно работает Подмигивающий Собственно, я просто набросал рабочий пример, чтобы проиллюстрировать то, что у меня не работает в основном проекте. Я понимаю, что ситуация банальная. Всё, на первый взгляд, проще простого и должно работать. Но вот не работает у меня, и именно в Windows 10. Окно не перемещается в заданную позицию, и никаких ошибок нет.
3  Компиляторы и платформы / Windows / Re: WinAPI MoveWindow не работает в Win 10 : Октябрь 24, 2020, 13:14
Я хочу чтобы окошки двигались Улыбающийся Мой пример упорно не работает в Win 10, GetLastError() сразу после MoveWindow() возвращает 0, а окна не двигаются. Не могу понять куда смотреть, где искать ошибку. Тот же самый код в Windows 7 работает.
4  Компиляторы и платформы / Windows / WinAPI MoveWindow не работает в Win 10 : Октябрь 24, 2020, 12:07
Здравствуйте.

Почему-то в Win 10 не работает MoveWindow(), пробовал на нескольких дистрибутивах. В Win 7 всё работает прекрасно. В чём может быть причина?

Простейший пример, который двигает окна, в заголовке которых есть слово "Блокнот", прилагаю.
Код:
#include <QCoreApplication>
#include <windows.h>

QString getWindowTitle(HWND hWindow)
{
    wchar_t wtitle[1024];
    int len = GetWindowText(hWindow, LPWSTR(wtitle), sizeof (wtitle) - sizeof (wchar_t));

    if (len <= 0)
        return QString();
    else
        return QString::fromWCharArray(wtitle);
}

int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);

    HWND hRoot = GetDesktopWindow();
    HWND hWindow = GetWindow(hRoot, GW_CHILD);

    int i = 25;
    while (hWindow != nullptr)
    {
        QString win_title = getWindowTitle(hWindow);

        if (win_title.contains("Блокнот")) {
            MoveWindow(hWindow, i, i, 500, 400, true);
            i += 25;
        }

        hWindow = GetWindow(hWindow, GW_HWNDNEXT);
    }

    //    return a.exec();
}

5  Qt / Вопросы новичков / Re: Ошибка компиляции при добавлении <vds.h> : Ноябрь 07, 2019, 07:36
Победил. Надо было перед #include добавить

Код:
#define _WIN32_WINNT 0x0600
6  Qt / Вопросы новичков / Ошибка компиляции при добавлении <vds.h> : Ноябрь 07, 2019, 04:52
Здравствуйте. Я новичок в Qt, возникла необходимость получить информацию о виртуальных дисках в Windows. Сделал программу пустышку для опытов, окно с plainTextEdit. Всё компилируется, но стоит мне добавить в код

Код:
#include <vds.h>

в редакторе сверху появляется предупреждение "Модель кода не сможет обрабатывать включённый файл, который, например, может приводить к неверному дополнению кода и подсветки". Компиляция завершается с ошибкой:

Код:
...
D:\Qt\Tools\mingw730_64\x86_64-w64-mingw32\include\vdslun.h:10: ошибка: 'VDS_INTERCONNECT_ADDRESS_TYPE' does not name a type; did you mean '_VDS_INTERCONNECT'?
   VDS_INTERCONNECT_ADDRESS_TYPE m_addressType;
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   _VDS_INTERCONNECT
...

Тип VDS_INTERCONNECT_ADDRESS_TYPE объявлен в vds.h. Что не нравится компилятору? Помогите разобраться, пожалуйста Улыбающийся

P.S. Qt 5.13.1, Windows 7 64-bit
Страниц: [1]

Страница сгенерирована за 0.072 секунд. Запросов: 24.