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

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

?? drvlistbox.cpp

?? WINDOWS下讀取硬盤扇區的程序的源碼 VC6.0下編譯通過
?? CPP
字號:
// ==========================================================================
// DrvListBox.cpp : implementation file
// ==========================================================================

#include "stdafx.h"
#include "DrvListBox.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

// ==========================================================================
// Construction/Destruction
// ==========================================================================
CDrvListBox::CDrvListBox() :
  m_pDriveStrings( NULL ),
	m_pImageList( NULL )
	{
	}
CDrvListBox::~CDrvListBox()
	{
  // detach system image list before deleting it: otherwise when I delete the 
	// list I'd be deallocating the system-wide image list

	if( m_pImageList != NULL )
		{
		m_pImageList->Detach();
		delete m_pImageList;
		}

	// this should be safe since all pointers into that buffer are destroyed
	// at the "same" time

	if( m_pDriveStrings != NULL )
		delete[] m_pDriveStrings;
	}
// ==========================================================================
// Message Map
// ==========================================================================

BEGIN_MESSAGE_MAP(CDrvListBox, CComboBoxEx)
	//{{AFX_MSG_MAP(CDrvListBox)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

// ==========================================================================
// Load Items - collects all drive information and place it into the listbox,
// return number of items added to the list: a negative value is an error;
// ==========================================================================
int CDrvListBox::LoadItems( const bool bLargeIcons )
{
	if( m_pDriveStrings != NULL )
		return -1; // duplicate calls are not implemented

	// allocate buffer for the drive strings: GetLogicalDriveStrings will tell
	// me how much is needed (minus the trailing zero-byte)

	size_t lAllDriveStrings = GetLogicalDriveStrings( 0, NULL );

	_ASSERT( m_pDriveStrings == NULL );
		m_pDriveStrings = new _TCHAR[ lAllDriveStrings + sizeof( _T("")) ]; // + for trailer
		if( GetLogicalDriveStrings( lAllDriveStrings, m_pDriveStrings ) != lAllDriveStrings - 1 )
			return -2;
	_ASSERT( m_pDriveStrings != NULL );

	// this structure is used to enter items into the CComboBoxEx, preset
	// some parts before loop to fill box starts; I need to set both 
	// standard and selected images or I won't see an icon when an entry
	// is selected; the lParam is set so I can have direct access to the
	// selected root path.

	COMBOBOXEXITEM CBEItem;
	CBEItem.mask		= CBEIF_IMAGE | CBEIF_SELECTEDIMAGE | CBEIF_TEXT | CBEIF_LPARAM;
	CBEItem.cchTextMax	= 0;	// is ignored
	CBEItem.iItem		= -1; // insert at end
  
	// now loop over each drive (string)

	_TCHAR *pDriveString = m_pDriveStrings;
	size_t  lDriveString = strlen( pDriveString );
	DWORD		dIconSize    = bLargeIcons ? SHGFI_LARGEICON : SHGFI_SMALLICON;

	while( lDriveString > 0 )
	{
    // retrieve display string and icon handle

		SHFILEINFO FileInfo;
		DWORD r = SHGetFileInfo( pDriveString, 0, &FileInfo, sizeof( FileInfo ),
			SHGFI_DISPLAYNAME | SHGFI_SYSICONINDEX | dIconSize );
		if( r == 0 ) // failure - which can be ignored 
		{
			TRACE0( "SHGetFileInfo failed, no more details available\n" );
		}
		else
		{
			// insert icon and string into list box

			CBEItem.pszText = FileInfo.szDisplayName;
			CBEItem.lParam  = ( LPARAM )pDriveString;

			CBEItem.iSelectedImage	=
			CBEItem.iImage			= FileInfo.iIcon; // index into system image list

			if(GetDriveType(pDriveString)==DRIVE_FIXED || GetDriveType(pDriveString)==DRIVE_REMOVABLE)
				VERIFY( InsertItem( &CBEItem ) >= 0 );
			}

		// setup for next drive string (next round in loop)

		pDriveString += lDriveString + 1;
		lDriveString = strlen( pDriveString );
	}

	// have items in list, now provide image list: it seems I cannot just
	// pass the system image list (see notes on System Image List by Marc
	// Otway) so I create a copy on the fly (code based also on Marc's)

	_ASSERT( m_pImageList == NULL );
	m_pImageList = new CImageList;

	// load the system image list - use an arbitrary file extension for the
	// call to SHGetFileInfo (we don't want to touch the disk, so use
	// FILE_ATTRIBUTE_NORMAL && SHGFI_USEFILEATTRIBUTES)

	SHFILEINFO FileInfo;
	VERIFY( m_pImageList->Attach(( HIMAGELIST )SHGetFileInfo( _T(".txt"),
		FILE_ATTRIBUTE_NORMAL, &FileInfo, sizeof( FileInfo ),
		SHGFI_USEFILEATTRIBUTES | SHGFI_SYSICONINDEX | dIconSize )));
	
	// make the background colour transparent, works better for lists etc.

	m_pImageList->SetBkColor( CLR_NONE );

	// don't forget to set it up!

	VERIFY( SetImageList( m_pImageList ) == NULL );

	// done.

	return GetCount();
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产在线一区二区综合免费视频| 亚洲免费在线视频| 91精品久久久久久久91蜜桃| 91成人国产精品| 色呦呦网站一区| 91成人在线观看喷潮| 欧美视频一区二区三区| 色综合久久久久综合体| 91国偷自产一区二区开放时间 | 91精品国产麻豆| 欧美视频在线观看一区二区| 欧美色图一区二区三区| 欧美日韩黄视频| 欧美一区二区观看视频| 日韩欧美亚洲国产另类| 久久综合色之久久综合| 国产欧美日韩久久| 亚洲欧美日韩国产中文在线| 夜夜夜精品看看| 日韩av一二三| 国产盗摄女厕一区二区三区| 99免费精品视频| 欧美日韩一区三区四区| 精品国产污污免费网站入口| 中文字幕一区二区日韩精品绯色| 一区二区三区 在线观看视频| 丝袜美腿亚洲色图| 国产福利不卡视频| 在线看日韩精品电影| 精品少妇一区二区三区| 国产精品三级av| 视频在线在亚洲| 成人短视频下载| 7777精品伊人久久久大香线蕉| 久久在线免费观看| 亚洲在线视频一区| 国产制服丝袜一区| 欧洲av在线精品| 久久综合色8888| 午夜精品久久久久影视| www.欧美.com| 欧美电影免费观看完整版| 国产精品久久久久四虎| 蜜桃久久久久久| 色综合久久久久综合99| 久久一夜天堂av一区二区三区 | 欧美日韩在线观看一区二区| 日韩精品最新网址| 亚洲国产一区二区在线播放| 国产高清无密码一区二区三区| 欧美日韩综合在线| 亚洲欧美日韩一区| 国产成人一级电影| 日韩精品一区国产麻豆| 亚洲国产精品久久久久秋霞影院| 国产白丝精品91爽爽久久| 欧美电影在线免费观看| 亚洲日本在线视频观看| 国产福利一区二区| 精品久久久久久久久久久久久久久久久 | 欧美国产精品一区二区三区| 日韩电影在线免费观看| 在线免费精品视频| 一区二区三区在线播放| av成人免费在线| 国产欧美一区二区精品秋霞影院 | 国产精品家庭影院| 国产福利91精品| 国产亚洲一区二区在线观看| 日本人妖一区二区| 欧美一级片免费看| 美腿丝袜亚洲色图| 在线播放一区二区三区| 午夜日韩在线电影| 欧美精品在线一区二区| 日韩高清一区在线| 日韩一区二区免费视频| 日本欧美一区二区三区乱码| 欧美一级爆毛片| 精彩视频一区二区| 久久久久久久久岛国免费| 国产在线麻豆精品观看| 国产无遮挡一区二区三区毛片日本| 日韩成人一级片| 2欧美一区二区三区在线观看视频| 久久成人羞羞网站| 久久日一线二线三线suv| 国产精品一区在线观看乱码| 久久精品水蜜桃av综合天堂| 国产精品白丝jk白祙喷水网站 | 亚洲亚洲人成综合网络| 91麻豆精品久久久久蜜臀| 六月丁香婷婷久久| 国产精品―色哟哟| 欧美日韩国产综合久久| 麻豆视频一区二区| 国产精品理论片| 欧美日韩亚洲丝袜制服| 黄页视频在线91| 亚洲欧美综合另类在线卡通| 欧美撒尿777hd撒尿| 精品亚洲成a人| 亚洲乱码国产乱码精品精可以看| 欧美视频一区在线观看| 久久国产精品露脸对白| 国产精品久久久一区麻豆最新章节| 色噜噜夜夜夜综合网| 蜜臀av性久久久久蜜臀av麻豆| 国产精品你懂的在线| 欧美男男青年gay1069videost| 国产综合一区二区| 亚洲福利一区二区三区| 国产欧美一区二区精品性色超碰| 在线亚洲一区观看| 国产高清在线精品| 日韩电影在线免费观看| 综合在线观看色| www久久精品| 欧美日韩精品一区二区三区 | 在线国产电影不卡| 国产一区在线不卡| 亚洲一区二区欧美日韩| 欧美国产精品一区二区三区| 91精品久久久久久久99蜜桃| 成人av在线资源网站| 青青草伊人久久| 一区二区三区在线观看网站| 国产色综合久久| 欧美精品一区二区三区久久久 | 欧美一区二区三区视频在线观看 | 午夜视频一区二区三区| 欧美激情综合网| 日韩精品在线网站| 欧美一二三区精品| 欧美日韩中字一区| 91麻豆免费在线观看| 国产成人精品免费视频网站| 蜜臀av亚洲一区中文字幕| 亚洲电影一区二区三区| 亚洲欧洲一区二区在线播放| 久久婷婷成人综合色| 日韩三级视频中文字幕| 欧美丰满少妇xxxxx高潮对白| 色婷婷综合久久久久中文一区二区 | 精品国产露脸精彩对白| 3d动漫精品啪啪| 67194成人在线观看| 欧美日韩成人综合天天影院| 99re热这里只有精品免费视频| 国产成人在线观看| 国产精品资源在线观看| 久久国产精品免费| 国产麻豆精品theporn| 经典三级在线一区| 国产乱子轮精品视频| 国产伦精品一区二区三区在线观看| 国产最新精品免费| 成人性生交大片免费看视频在线 | 色www精品视频在线观看| av影院午夜一区| 日本丰满少妇一区二区三区| 欧美丝袜第三区| 欧美老年两性高潮| 欧美一区二区视频在线观看2020| 欧美成va人片在线观看| 久久久亚洲午夜电影| 国产精品久久久久久久久果冻传媒 | 国产成人免费视频| 成人手机电影网| 色欧美乱欧美15图片| 欧美美女直播网站| 欧美一区二区三区四区在线观看| 欧美本精品男人aⅴ天堂| 国产午夜亚洲精品理论片色戒 | 欧美日韩亚州综合| 欧美xxx久久| 中文字幕日本不卡| 免费成人美女在线观看| 国产福利一区二区三区在线视频| 99麻豆久久久国产精品免费| 欧美日韩免费在线视频| 久久综合五月天婷婷伊人| 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆| 欧美日韩免费一区二区三区 | 日韩av中文字幕一区二区| 九九精品一区二区| 91免费看片在线观看| 欧美一区二区三区成人| 中文字幕一区三区| 日韩精品三区四区| 成人av第一页| 日韩精品中文字幕在线不卡尤物| 国产精品久久国产精麻豆99网站 | 久久se精品一区二区| 97久久精品人人做人人爽| 日韩亚洲欧美综合| 亚洲另类在线制服丝袜| 国产另类ts人妖一区二区| 欧美日韩一区小说| 最新国产精品久久精品|