Невозможно вызвать SHGetKnownFolderPath (), даже если #include & lt; Shlobj.h & gt; и комментарий #pragma (lib, & quot; Shell32.lib & quot;)

(Visual Studio 2010 / Visual C ++ / Windows 7)

example.cpp:

#include <Shlobj.h>
#pragma comment (lib, "Shell32.lib")
...
void example()
{
SHGetKnownFolderPath(...) // undefined
}

Я делаю все по документация и что я вижу в других темах, но это все еще не работает.

2

Решение

У меня была точно такая же проблема. Работал другой проект с тем же кодом и вспомогательными файлами (но с разными включениями).

Ввод #include <Shlobj.h> вверху файла решена проблема.

Однако он может не воспроизводиться, поскольку должен был работать без этого. Вероятно, еще одна ошибка Visual Studio.

2

Другие решения

Попробуйте поставить следующее утверждение, прежде чем все включает:

#define WINVER 0x0600
#define _WIN32_WINNT 0x0600

Так как документация говорит, что нужно Vista / 2008 минимум.

1

По вопросам рекламы [email protected]