Какая библиотека необходима для работы функции SHGetKnownFolderPath?

Вот более ясная и структурированная формулировка вашего вопроса: 

В представленном коде, использующем Qt, возникает проблема с подключением объекта FOLDERID_ProgramFilesX86. Я добавил следующие библиотеки в проект: 

<pre><code>win32 {
    LIBS += -lshell32 -lole32
}</code></pre>

Не могли бы вы подсказать, в какой библиотеке можно найти объект FOLDERID_ProgramFilesX86?
  • 23 октября 2024 г. 10:52
Ответы на вопрос 1
Для использования объекта `FOLDERID_ProgramFilesX86` в вашем проекте необходимо добавить библиотеку `shlguid.lib`. Этот файл содержит определения GUID, которые используются в API Windows, включая идентификаторы папок.

В вашем `.pro` файле вам нужно добавить эту библиотеку следующим образом:

```plaintext
win32 {
    LIBS += -lshell32 -lole32 -lshlguid
}
```

Также убедитесь, что у вас правильно настроены пути к заголовочным файлам Windows API, так как для использования идентификаторов и других функций вам может потребоваться включить соответствующий заголовочный файл:

```cpp
#include <shlobj.h> // Для SHGetKnownFolderPath
#include <guiddef.h> // Для GUID
```

После этого вы сможете использовать `FOLDERID_ProgramFilesX86` в вашем коде.
Похожие вопросы