亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? shellpidl.h

?? 一個完整的顯示Windows目錄的程序
?? H
字號:
// ShellPidl.h: interface for the CShellPidl class.
//
/////////////////////////////////////////////////////////////////////////////
//
// Copyright (C) 2000-2001 by Paolo Messina
// (http://www.geocities.com/ppescher - ppescher@yahoo.com)
//
// The contents of this file are subject to the Artistic License (the "License").
// You may not use this file except in compliance with the License. 
// You may obtain a copy of the License at:
// http://www.opensource.org/licenses/artistic-license.html
//
// If you find this code useful, credits would be nice!
//
/////////////////////////////////////////////////////////////////////////////

#if !defined(AFX_SHELLPIDL_H__98F90381_3F3A_4DF6_948D_B9BB960E7A96__INCLUDED_)
#define AFX_SHELLPIDL_H__98F90381_3F3A_4DF6_948D_B9BB960E7A96__INCLUDED_

#include <shlobj.h>
#include "ShellWrappers.h"

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

class CShellPidl : public TSharedObject<ITEMIDLIST>
{
protected:
	static LPCITEMIDLIST ILGetLast(LPCITEMIDLIST pidl);
	// manage PIDLs
	static UINT ILGetLength(LPCITEMIDLIST pidl);
	static LPCITEMIDLIST ILGetNext(LPCITEMIDLIST pidl);
	static LPITEMIDLIST ILCombine(LPCITEMIDLIST pidl1, LPCITEMIDLIST pidl2);
	static LPITEMIDLIST ILClone(LPCITEMIDLIST pidl);
	static LPITEMIDLIST ILCloneFirst(LPCITEMIDLIST pidl);
	static LPITEMIDLIST ILCloneParent(LPCITEMIDLIST pidl);
	static LPITEMIDLIST ILFromPath(LPCTSTR pszPath, HWND hOwner = NULL);

public:
	CShellPidl(LPCTSTR pszPath, HWND hOwner = NULL);
	CShellPidl(UINT nSpecialFolder, HWND hOwner = NULL);
	CShellPidl(LPCITEMIDLIST pidlParent, LPCITEMIDLIST pidlRel);
	CShellPidl(LPCITEMIDLIST pidl);
	CShellPidl();
	virtual ~CShellPidl();

	int GetIconIndex(UINT uFlags = SHGFI_SMALLICON) const;
	BOOL IsRoot() const;

	void Combine(LPCITEMIDLIST pidl1, LPCITEMIDLIST pidl2);
	void CloneLastParent(LPCITEMIDLIST pidl);
	void CloneLastChild(LPCITEMIDLIST pidl);
	void CloneFirstParent(LPCITEMIDLIST pidl);
	void CloneFirstChild(LPCITEMIDLIST pidl);

	LPCITEMIDLIST GetFirstChild();
	LPCITEMIDLIST GetLastChild();

	CString GetPath() const;

// debug support 
#ifdef _DEBUG
	void Dump(CDumpContext& dc) const;
#endif //_DEBUG
};

//////////////////////////////////////////////////////////////////////
// Inline Member Functions

inline CShellPidl::CShellPidl()
{
}

inline CShellPidl::~CShellPidl()
{
}

inline CShellPidl::CShellPidl(LPCITEMIDLIST pidl)
{
	m_pObj = ILClone(pidl);
}

inline CShellPidl::CShellPidl(LPCITEMIDLIST pidlParent, LPCITEMIDLIST pidlRel)
{
	m_pObj = ILCombine(pidlParent, pidlRel);
}

inline CShellPidl::CShellPidl(UINT nSpecialFolder, HWND hOwner)
{
	SHGetSpecialFolderLocation(hOwner, nSpecialFolder, &m_pObj);
}

inline CShellPidl::CShellPidl(LPCTSTR pszPath, HWND hOwner)
{
	m_pObj = ILFromPath(pszPath, hOwner);
}

inline BOOL CShellPidl::IsRoot() const
{
	return (m_pObj != NULL) && (m_pObj->mkid.cb == 0);
}

inline CString CShellPidl::GetPath() const
{
	CString path;
	BOOL bSuccess = SHGetPathFromIDList(m_pObj, path.GetBuffer(MAX_PATH));
	path.ReleaseBuffer();
	if (!bSuccess)
		path.Empty();
	return path;
}

inline int CShellPidl::GetIconIndex(UINT uFlags) const
{
	SHFILEINFO sfi;
	ZeroMemory(&sfi, sizeof(SHFILEINFO));
	uFlags |= SHGFI_PIDL | SHGFI_SYSICONINDEX;
	SHGetFileInfo((LPCTSTR)m_pObj, 0, &sfi, sizeof(SHFILEINFO), uFlags);
	return sfi.iIcon;
}

inline void CShellPidl::Combine(LPCITEMIDLIST pidl1, LPCITEMIDLIST pidl2)
{
	Destroy();
	Attach(ILCombine(pidl1, pidl2));
}

// get the first ancestor
inline void CShellPidl::CloneFirstParent(LPCITEMIDLIST pidl)
{
	Destroy();
	Attach(ILCloneFirst(pidl));
}

inline void CShellPidl::CloneFirstChild(LPCITEMIDLIST pidl)
{
	Destroy();
	Attach(ILClone(ILGetNext(pidl)));
}

inline LPCITEMIDLIST CShellPidl::GetFirstChild()
{
	return ILGetNext(m_pObj);
}

// get the immediate parent
inline void CShellPidl::CloneLastParent(LPCITEMIDLIST pidl)
{
	Destroy();
	Attach(ILCloneParent(pidl));
}

inline void CShellPidl::CloneLastChild(LPCITEMIDLIST pidl)
{
	Destroy();
	Attach(ILClone(ILGetLast(pidl)));
}

inline LPCITEMIDLIST CShellPidl::GetLastChild()
{
	return ILGetLast(m_pObj);
}

//////////////////////////////////////////////////////////////////////
// Inline Static Functions

inline LPITEMIDLIST CShellPidl::ILClone(LPCITEMIDLIST pidl)
{
	return ILCombine(NULL, pidl);
}


#endif // !defined(AFX_SHELLPIDL_H__98F90381_3F3A_4DF6_948D_B9BB960E7A96__INCLUDED_)

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩一区小说| 午夜精品福利一区二区蜜股av| 亚洲综合色成人| 国产一二精品视频| 精品国产乱码久久久久久蜜臀| 日韩影视精彩在线| 欧美一区永久视频免费观看| 亚洲国产精品久久不卡毛片| 欧美性猛交xxxx黑人交| 国产超碰在线一区| 欧美mv和日韩mv的网站| 亚洲精品菠萝久久久久久久| 日本国产一区二区| 日韩电影免费一区| 2021中文字幕一区亚洲| 国产黄色精品视频| 一区二区国产盗摄色噜噜| 欧美午夜精品电影| 美女国产一区二区三区| 精品国产伦一区二区三区观看体验| 久久99精品久久久久| 久久久久国产精品麻豆| 91在线无精精品入口| 亚洲一级在线观看| 精品免费一区二区三区| 成人动漫视频在线| 亚洲欧洲av另类| 8x福利精品第一导航| 久久66热偷产精品| 国产精品久久久久久久久搜平片| 欧美亚洲综合久久| 国产成人精品免费在线| 国产精品一卡二卡| 亚瑟在线精品视频| 国产精品久久久久一区| 欧美日韩mp4| 91免费看视频| 久久av老司机精品网站导航| 国产精品萝li| 久久久久综合网| 欧美一区二区免费| 欧美三区在线观看| 日本伦理一区二区| bt7086福利一区国产| 日韩在线一二三区| 亚洲自拍欧美精品| 亚洲男人的天堂一区二区| 日本一区二区三区在线观看| 欧美一级精品大片| 3atv在线一区二区三区| 一区二区三区毛片| 久久99热这里只有精品| 中文字幕一区二区三区四区| 精品国产乱子伦一区| 欧美xxxxxxxxx| 亚洲女同一区二区| 国产一区二区三区在线观看免费 | 综合久久一区二区三区| 日韩不卡一二三区| 一本色道久久综合亚洲aⅴ蜜桃 | 亚洲免费观看在线观看| 久久er精品视频| 欧美一区二区不卡视频| 一区二区三区欧美日韩| 成人深夜视频在线观看| 久久综合色播五月| 蜜桃视频一区二区三区| 制服.丝袜.亚洲.另类.中文| 亚洲免费毛片网站| 一本一道久久a久久精品| 国产精品久久毛片av大全日韩| 日韩高清不卡在线| eeuss鲁片一区二区三区在线看| 91精品福利视频| 久久综合色综合88| 紧缚奴在线一区二区三区| 久久精品人人做人人综合| 色香蕉成人二区免费| 奇米精品一区二区三区在线观看 | 国产精品一二一区| 8x福利精品第一导航| 蜜臀久久99精品久久久画质超高清 | 91看片淫黄大片一级| 中文字幕成人在线观看| 久草中文综合在线| 久久久久久亚洲综合| 国产传媒欧美日韩成人| 日本一区二区动态图| 粉嫩久久99精品久久久久久夜| 亚洲欧洲精品一区二区三区不卡| 99久久精品久久久久久清纯| 国产精品精品国产色婷婷| 色综合久久99| 久久国产精品第一页| 精品国产不卡一区二区三区| 播五月开心婷婷综合| 亚洲一二三四区不卡| 2023国产精品视频| 精品国产亚洲在线| 日韩精品一区二区在线| 欧美日韩性生活| 欧美日韩一区二区不卡| 91视频一区二区三区| 美女一区二区三区在线观看| 亚洲gay无套男同| 最近中文字幕一区二区三区| 中文字幕不卡在线观看| 国产欧美精品在线观看| 精品国产乱码久久久久久图片 | 亚洲在线视频网站| 中文字幕一区二区在线播放| 国产亚洲人成网站| www激情久久| 欧美刺激脚交jootjob| 欧美日韩中文一区| 色综合天天综合网国产成人综合天| 国产精一品亚洲二区在线视频| 日本成人在线一区| 午夜精品一区在线观看| 亚洲中国最大av网站| 亚洲欧美中日韩| 亚洲日本va在线观看| 国产精品美女久久久久久 | 色噜噜狠狠色综合欧洲selulu| 国产成人av影院| 成人综合日日夜夜| 97se亚洲国产综合自在线| 色狠狠桃花综合| 91视频国产资源| 欧美三级电影在线看| 717成人午夜免费福利电影| 日韩亚洲欧美综合| 国产欧美日韩另类一区| 国产精品久久久久久久久搜平片| 亚洲欧美日韩中文播放 | 中文字幕五月欧美| 性感美女久久精品| 成人a区在线观看| 欧美一级在线免费| 亚洲一区二区欧美| 国产成人午夜高潮毛片| 亚洲精品在线一区二区| 亚洲图片有声小说| 在线免费精品视频| 亚洲国产精品高清| 国产白丝精品91爽爽久久| 日韩欧美123| 日韩精品乱码免费| 欧美一区二区三区视频| 三级影片在线观看欧美日韩一区二区| av电影在线不卡| 久久久综合九色合综国产精品| 欧美激情一区二区在线| 日韩主播视频在线| 99精品视频中文字幕| 久久精品欧美一区二区三区不卡| 亚洲无线码一区二区三区| 国产 欧美在线| av激情综合网| 国产精品国产三级国产aⅴ中文| 免费高清成人在线| 欧美军同video69gay| 亚洲精品一线二线三线| 亚洲综合久久久久| 国产精品一二三区| 国产亚洲福利社区一区| 性做久久久久久免费观看| 欧美色偷偷大香| 一区二区三区四区视频精品免费| 成人福利视频在线看| 91精品欧美久久久久久动漫 | 蜜臀va亚洲va欧美va天堂| 欧美人成免费网站| 五月激情六月综合| 精品少妇一区二区三区免费观看| 亚洲伦理在线精品| 99国内精品久久| 一区二区三区免费| 欧美精品少妇一区二区三区| 亚洲444eee在线观看| 日韩一区二区三区三四区视频在线观看| 亚洲欧美日韩一区二区三区在线观看| 国产黑丝在线一区二区三区| 综合av第一页| 亚洲国产精品久久久久秋霞影院 | 美日韩黄色大片| 日韩一区二区在线免费观看| 黄一区二区三区| 久久久av毛片精品| 99久久99久久综合| 亚洲一区成人在线| 欧美精品自拍偷拍| 国产精品一区二区在线观看不卡 | 亚洲成人在线观看视频| 91精品在线一区二区| 国产成人av自拍| 亚洲不卡在线观看| 精品999久久久| 欧美在线一区二区| 国产成人av电影在线|