home.social

#win32 — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #win32, aggregated by home.social.

  1. Как я автоматизировал UI в Windows: UIAutomation и Win32

    Привет, меня зовут Алексей, я C# разработчик. Я разрабатывал библиотеку для автоматизации взаимодействия с различными UI-элементами и их захвата. Одной из поддерживаемых сред в такой библиотеке обязательно должна быть Windows и в ней так же требуется: находить кнопки, поля, окна, списки, нажимать на них, читать значения, вводить текст и в целом обращаться с интерфейсом не как пользователь с мышкой, а как программа. На первый взгляд задача звучит просто: нашли элемент, кликнули, пошли дальше. Но в реальных приложениях у элемента может не быть (считай не будет) нормального AutomationId , у нескольких окон может быть один и тот же заголовок, дерево интерфейса может прогружаться не сразу, а старое desktop-приложение вообще не предназначено для взаимодействия с современными API для автоматизации. В итоге в моей библиотеке появилось два основных Windows-подхода:

    habr.com/ru/articles/1035292/

    #automation #ui_testing #ui_automation #winapi #win32 #тестирование #автоматизация #автоматизация_тестирования #интерфейсы #автоматизация_бизнеспроцессов

  2. Giovanni's blog just dropped the hottest take 😎: "Why not use string views instead of const& wstrings?" Because he's apparently in the business of crafting "nasty bugs" and defying rationality with #Win32 C code 🐛🤦‍♂️.
    giodicanio.com/2024/05/14/why- #GiovanniBlog #StringViews #CCode #NastyBugs #DeveloperHumor #HackerNews #ngated

  3. My desktop is KDE Plasma, but I also like to use GNOME apps.

    I find funny how this weird mix of Qt+GTK4 happens to be exactly like the weird mix of Win32+UWP on Windows.

    #Linux #Desktop #Windows #KDE #Plasma #GNOME #Qt #GTK #Win32 #UWP

  4. Anyone here with #WinRT knowledge?
    If I have e.g. com:ComInterface and com4:ComInterface registered, does com4 on supported systems override the com declaration?

    #Windows #Win32 #UWP #MSIX

  5. Okayokay #Microsoft, how can you fuck up #Windows so badly?

    User complains "Task Manager autostart settings have no effect on your application"

    User checks HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System
    And both keys, SupportFullTrustStartupTasks and EnableFullTrustStartupTasks, are missing.
    Recreates it, and autostart works again.

    In fact, everything except "HideFastUserSwitching" and "DisableAutomaticRestartSignOn" were missing.

    HOW!?

    #Win32 #UWP

  6. I pushed an update to #DOStodon (the #Mastodon client for MS-DOS):

    - Updated #curl to 8.13.0
    - Updated #mbedTLS to 3.6.3
    - Fixed #win32 version (works on #WinXP or newer), DLLs were missing

    Grab it at github.com/SuperIlu/DOStodon

    Screenshot is showing the win32 version running on Win10.

    #Javascript #RetroComputing #MSDOS #CreativeCoding #MastodonClient #FreeDOS #DJGPP #DOjS

  7. I updated #mbedTLS and #curl in #DOjS. This one took a lot longer than I expected because curl dropped Makefile.mk builds and I had to switch to #CMake or #autconf.
    I went with CMake, but had to work around some weird problems.

    #MSDOS and #Linux build are already green again, I'll tackle #win32 later...

    #RetroComputing #JavaScript

  8. I pushed an update to #DOStodon (the #Mastodon client for MS-DOS):

    - Updated README because of login-problems with Mastodon 4.3 or newer
    - Uploaded #win32 version (works on #WinXP or newer)

    Grab it at github.com/SuperIlu/DOStodon

    #Javascript #RetroComputing #MSDOS #CreativeCoding #MastodonClient #FreeDOS #DJGPP #DOjS

  9. My 2024 #GitHub #recap:

    - Two #DOjS releases and a #win32 port

    - A new release of #jSH

    - Contributed #DJGPP patches to #mbedTLS and #jasper

    - Updated my #BuildRoot GeodeLX repo

    - Updated DOSQLite (#SQLite for MS-DOS)

    - 11 Updates to #DOStodon (#MastodonClient for MS-DOS)

    - Three updates to #httpDOS (#HTTPS server for MS-DOS)

    #MSDOS #RetroComputing #recap2024 #JavaScript #SQLite3 #FreeDOS #creativecoding #p5js #retrodev #retrodevelopment #3dfx #OpenGL #Processing

  10. [Перевод] Разработка интерфейса для Windows — это боль

    Последние несколько дней я пытался найти библиотеку, которая бы позволила мне писать на C++ программы с GUI. Мои требования были довольно просты: • Достаточно только поддержки Windows • Разрешено коммерческое использование • Простая стилизация, в том числе и тёмный режим • Результатом должен быть единый файл .exe размером меньше 40 МБ без или с минимальным количеством зависимостей • Написание части программы с GUI не должно занимать больше времени, чем сама функциональность

    habr.com/ru/articles/825916/

    #gui #win32 #win32_api #qt #wfc

  11. BTW the specific #win32-api-braindamage that hit me in #dos2ansi 1.0 was FlushFileBuffers(): learn.microsoft.com/en-us/wind

    Sure, my fault not to read the *whole* docs before using it and just assuming sane semantics 🙈:

    > The function fails if _hFile_ is a handle to the console output. That is because the console output is not buffered.

    Okayyyy. I mean, not *having* to know what some "handle" used to do I/O is referring to exactly is kind of the whole point of any I/O abstraction, at least I thought so. Any API I've seen so far would just make it a no-op (and, of course, succeed) in such a case. 🤯

    #Windows #WinAPI #braindamage

  12. #Microsoft wants to rewrite `explorer.exe` with the #Windows App #SDK and #WinUI3.

    The current #explorer is slow af, but somehow I feel like they will manage to make it even slower.

    I wanted to try #WinUI a few times now, but they made it impossible to use in a regular program. It has to be a packaged #App and it has to be distributed through the #WindowsStore. And all of a sudden, the #Win32 #GUI seems still fine to me.

    Or, actually, #WxWidgets! Did you know it had an update recently?