{"version":"1.0","html":"<iframe src=\"https://hatenablog-parts.com/embed?url=https%3A%2F%2Fpotisan-programming-memo.hatenablog.jp%2Fentry%2F2019%2F07%2F02%2F195340\" title=\"C++\u3067ATL\u3092\u4f7f\u7528\u3057\u3066\u30c7\u30b9\u30af\u30c8\u30c3\u30d7\u306e\u6700\u521d\u306e\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u306e\u8868\u793a\u540d\u3092\u53d6\u5f97\u3059\u308b - potisan\u306e\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0\u30e1\u30e2\" class=\"embed-card embed-blogcard\" scrolling=\"no\" frameborder=\"0\" style=\"display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;\"></iframe>","blog_url":"https://potisan-programming-memo.hatenablog.jp/","title":"C++\u3067ATL\u3092\u4f7f\u7528\u3057\u3066\u30c7\u30b9\u30af\u30c8\u30c3\u30d7\u306e\u6700\u521d\u306e\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u306e\u8868\u793a\u540d\u3092\u53d6\u5f97\u3059\u308b","url":"https://potisan-programming-memo.hatenablog.jp/entry/2019/07/02/195340","blog_title":"potisan\u306e\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0\u30e1\u30e2","image_url":null,"published":"2019-07-02 19:53:40","type":"rich","provider_url":"https://hatena.blog","author_url":"https://blog.hatena.ne.jp/potisan/","categories":["ATL","C++","COM","Win32 API"],"height":"190","provider_name":"Hatena Blog","width":"100%","author_name":"potisan","description":"ATL\u3092\u4f7f\u7528\u3057\u3066\u30c7\u30b9\u30af\u30c8\u30c3\u30d7\u306e\u6700\u521d\u306e\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u306e\u8868\u793a\u540d\u3092\u53d6\u5f97\u3059\u308b\u30b5\u30f3\u30d7\u30eb\u30b3\u30fc\u30c9\u3067\u3059\u3002 \u958b\u767a\u74b0\u5883\uff1aWindows 10\u3001Microsoft Visual Studio 2019\u3001C++17 #define STRICT #include <Windows.h> #include <ShlObj.h> #include <atlbase.h> #include <atlcom.h> HRESULT CreateFirstObjectItemFromShellFolder(IShellFolder* pFolder, SHCONTF flags, IShellItem** ppItem); int\u2026"}