fix crash with FOLDERID_LocalAppDataLow not found

The macro DEFINE_KNOWN_FOLDER was copied from <KnownFolder.h>, it will link FOLDERID_LocalAppDataLow to an external dll.
but for some system(to me, Windows 7, Chinese Edition), the symbol can't be found at runtime, so FOLDERID_LocalAppDataLow becomes GUID_NULL, and at line 52, it will fail with crash.

Really strange.

Let's inspect <KnownFolder.h> again, there are two styles of DEFINE_KNOWN_FOLDER:

```cpp
#ifdef INITGUID
#define DEFINE_KNOWN_FOLDER(name, l, w1, w2, b1, b2, b3, b4, b5, b6, b7, b8) \
        EXTERN_C const GUID DECLSPEC_SELECTANY name \
                = { l, w1, w2, { b1, b2,  b3,  b4,  b5,  b6,  b7,  b8 } }
#else
#define DEFINE_KNOWN_FOLDER(name, l, w1, w2, b1, b2, b3, b4, b5, b6, b7, b8) \
        EXTERN_C const GUID name
#endif // INITGUID
```

Shall we use the first one without `extern`?