SOL9 2.0 Class: SpecialFolder

 SOL9 C++ Class Library  SOL9 Samples  SOL9 Tutorial  SOL9 FAQ  SOL9 ClassTree 

Source code

/*
 * SpecialFolder.h 
 * Copyright (c) 2011 Antillia.com TOSHIYUKI ARAI. ALL RIGHTS RESERVED. 
 */


// SOL++2000
// 2000.07.06
#pragma once

#include <sol\Object.h>

#include <shlobj.H>

namespace SOL {

class SpecialFolder :public Object {

public:
    SpecialFolder() { }

    HRESULT    getALTStartup(char* path, HWND owner = NULL, BOOL flag=FALSE) {
        return ::SHGetSpecialFolderPath(owner, path, CSIDL_ALTSTARTUP, flag);
    }

    HRESULT    getAppData(char* path, HWND owner = NULL, BOOL flag=FALSE) {
        return ::SHGetSpecialFolderPath(owner, path, CSIDL_APPDATA, flag);
    }

    HRESULT    getBitBucket(char* path, HWND owner = NULL, BOOL flag=FALSE) {
        return ::SHGetSpecialFolderPath(owner, path, CSIDL_BITBUCKET, flag);
    }

    HRESULT    getCommonALTStartup(char* path, HWND owner = NULL, BOOL flag=FALSE) {
        return ::SHGetSpecialFolderPath(owner, path, CSIDL_COMMON_ALTSTARTUP, flag);
    }

    HRESULT    getCommonDesktopDirectory(char* path, HWND owner = NULL, BOOL flag=FALSE) {
        return ::SHGetSpecialFolderPath(owner, path, CSIDL_COMMON_DESKTOPDIRECTORY, flag);
    }

    HRESULT    getCommonFavorites(char* path, HWND owner = NULL, BOOL flag=FALSE) {
        return ::SHGetSpecialFolderPath(owner, path, CSIDL_COMMON_FAVORITES, flag);
    }

    HRESULT    getCommonPrograms(char* path, HWND owner = NULL, BOOL flag=FALSE) {
        return ::SHGetSpecialFolderPath(owner, path, CSIDL_COMMON_PROGRAMS, flag);
    }

    HRESULT    getCommonStartMenu(char* path, HWND owner = NULL, BOOL flag=FALSE) {
        return ::SHGetSpecialFolderPath(owner, path, CSIDL_COMMON_STARTMENU, flag);
    }

    HRESULT    getCommonStartup(char* path, HWND owner = NULL, BOOL flag=FALSE) {
        return ::SHGetSpecialFolderPath(owner, path, CSIDL_COMMON_STARTUP, flag);
    }

    HRESULT    getCookies(char* path, HWND owner = NULL, BOOL flag=FALSE) {
        return ::SHGetSpecialFolderPath(owner, path, CSIDL_COOKIES, flag);
    }

    HRESULT    getDesktopDirectory(char* path, HWND owner = NULL, BOOL flag=FALSE) {
        return ::SHGetSpecialFolderPath(owner, path, CSIDL_DESKTOPDIRECTORY, flag);
    }

    HRESULT    getFavorites(char* path, HWND owner = NULL, BOOL flag=FALSE) {
        return ::SHGetSpecialFolderPath(owner, path, CSIDL_FAVORITES, flag);
    }

    HRESULT    getHistory(char* path, HWND owner = NULL, BOOL flag=FALSE) {
        return ::SHGetSpecialFolderPath(owner, path, CSIDL_HISTORY, flag);
    }
    HRESULT    getInternetCache(char* path, HWND owner = NULL, BOOL flag=FALSE) {
        return ::SHGetSpecialFolderPath(owner, path, CSIDL_INTERNET_CACHE, flag);
    }

    HRESULT    getNetHood(char* path, HWND owner = NULL, BOOL flag=FALSE) {
        return ::SHGetSpecialFolderPath(owner, path, CSIDL_NETHOOD, flag);
    }

    HRESULT    getPersonal(char* path, HWND owner = NULL, BOOL flag=FALSE) {
        return ::SHGetSpecialFolderPath(owner, path, CSIDL_PERSONAL, flag);
    }

    HRESULT    getPrintHood(char* path, HWND owner = NULL, BOOL flag=FALSE) {
        return ::SHGetSpecialFolderPath(owner, path, CSIDL_PRINTHOOD, flag);
    }

    HRESULT    getPrograms(char* path, HWND owner = NULL, BOOL flag=FALSE) {
        return ::SHGetSpecialFolderPath(owner, path, CSIDL_PROGRAMS, flag);
    }

    HRESULT    getRecent(char* path, HWND owner = NULL, BOOL flag=FALSE) {
        return ::SHGetSpecialFolderPath(owner, path, CSIDL_RECENT, flag);
    }

    HRESULT    getSendTo(char* path, HWND owner = NULL, BOOL flag=FALSE) {
        return ::SHGetSpecialFolderPath(owner, path, CSIDL_SENDTO, flag);
    }

    HRESULT    getStartMenu(char* path, HWND owner = NULL, BOOL flag=FALSE) {
        return ::SHGetSpecialFolderPath(owner, path, CSIDL_STARTMENU, flag);
    }

    HRESULT    getStartup(char* path, HWND owner = NULL, BOOL flag=FALSE) {
        return ::SHGetSpecialFolderPath(owner, path, CSIDL_STARTUP, flag);
    }

    HRESULT    getTemplates(char* path, HWND owner = NULL, BOOL flag=FALSE) {
        return ::SHGetSpecialFolderPath(owner, path, CSIDL_TEMPLATES, flag);
    }
};

}




Last modified: 1 Feb 2012

Copyright (c) 2009-2012 Antillia.com ALL RIGHTS RESERVED.