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

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

?? filemon.c

?? filemon的源碼
?? C
?? 第 1 頁 / 共 5 頁
字號:
	}

    switch (uMsg) {

	case WM_LBUTTONDBLCLK:
	case WM_RBUTTONDBLCLK:
	case WM_MBUTTONDBLCLK:
	case WM_LBUTTONUP:
	case WM_RBUTTONUP:
	case WM_MBUTTONUP:
	case WM_LBUTTONDOWN:
	case WM_MBUTTONDOWN:
	case WM_MOUSEMOVE:

		// delete any existing balloon
		if( hBalloon ) DestroyWindow( hBalloon );

		// save mouse position and reset the timer
		mousePosition = MAKEPOINTS( lParam );
		SetTimer( hWnd,	2, BALLOONDELAY, NULL );
		break;

	case WM_VSCROLL:
	case WM_HSCROLL:
	case WM_KEYDOWN:
		if( hBalloon ) DestroyWindow( hBalloon );

		if( uMsg == WM_KEYDOWN && 
			wParam == VK_ESCAPE &&
			hWndFind ) {

			DestroyWindow( hWndFind );
			hWndFind = NULL;
		}
		break;

	case WM_RBUTTONDOWN:
		mousePosition = MAKEPOINTS( lParam );
		SetTimer( hWnd,	2, BALLOONDELAY, NULL );
		// fall-through

	case WM_TIMER:

		// are we currently in the listview?
		GetCursorPos( &hitPoint );
		GetClientRect( hWnd, &listRect );
		topleftPoint.x = listRect.left;
		topleftPoint.y = listRect.top;
		ClientToScreen( hWnd, &topleftPoint );
		bottomrightPoint.x = listRect.right;
		bottomrightPoint.y = listRect.bottom;
		ClientToScreen( hWnd, &bottomrightPoint );
		if( hitPoint.x < topleftPoint.x ||
			hitPoint.x > bottomrightPoint.x ||
			hitPoint.y < topleftPoint.y ||
			hitPoint.y > bottomrightPoint.y ||
			(hWndFind && GetFocus() != hWndList) ) {

			// delete any existing balloon
			if( hBalloon ) DestroyWindow( hBalloon );
			break;
		}

		hitItem.pt.x = mousePosition.x;
		hitItem.pt.y =  mousePosition.y;
		if(	ListView_SubItemHitTest( hWndList, &hitItem ) != -1 ) {

			itemClick.itemText[0] = 0;
			ListView_GetItemText( hWndList, hitItem.iItem,
					hitItem.iSubItem, itemClick.itemText, 1024 );

			// delete any existing balloon
			if( hBalloon ) DestroyWindow( hBalloon );

			if( strlen( itemClick.itemText ) ) {

				if( hitItem.iSubItem ) {

					ListView_GetSubItemRect( hWndList, hitItem.iItem, hitItem.iSubItem,
							LVIR_BOUNDS, &itemClick.itemPosition);

					itemClick.itemPosition.bottom -= itemClick.itemPosition.top;
					itemClick.itemPosition.right  -= itemClick.itemPosition.left;

				} else {

					ListView_GetSubItemRect( hWndList, hitItem.iItem, 0,
							LVIR_BOUNDS, &itemClick.itemPosition);

					itemClick.itemPosition.bottom -= itemClick.itemPosition.top;
					itemClick.itemPosition.right  = ListView_GetColumnWidth( hWndList, 0 );
					itemClick.itemPosition.left   = 0;
				}

				hitPoint.y = itemClick.itemPosition.top;
				hitPoint.x = itemClick.itemPosition.left;

				ClientToScreen( hWnd, &hitPoint );

				itemClick.itemPosition.left = hitPoint.x;
				itemClick.itemPosition.top  = hitPoint.y;

				// pop-up a balloon (tool-tip like window)
				hBalloon = CreateWindowEx( 0, "BALLOON", 
								"balloon", 
								WS_POPUP|WS_BORDER,
								100, 100,
								200, 200,
								hWndMain, NULL, hInst, 
								&itemClick );
				if( hBalloon) SetFocus( hWnd );
			}
		}
		break;
    }

	// pass-through to real listview handler
    return CallWindowProc(ListViewWinMain, hWnd, uMsg, wParam, 
            lParam);
}


/****************************************************************************
* 
*    FUNCTION: CreateListView(HWND)
*
*    PURPOSE:  Creates the statistics list view window and initializes it
*
****************************************************************************/
HWND CreateList( HWND hWndParent )
{
	HWND		hWndList;    	  	// handle to list view window
	RECT		rc;         	  	// rectangle for setting size of window
	LV_COLUMN	lvC;				// list view column structure
	DWORD		j;
	static char process9xLabel[] = {"Process"};
	static struct {
		TCHAR *	Label;	// title of column
		DWORD	Width;
	} column[] = {
		{	"#"			},
		{	"Time"		},
		{	"Process"	},
		{	"Request"	},
		{	"Path"		},
		{	"Result"	},
		{	"Other"		},
	};

	// Ensure that the common control DLL is loaded.
	InitCommonControls();

	// Set the column widths according to the user-settings
	for( j = 0; j < NUMCOLUMNS; j++ ) {
		column[j].Width = PositionInfo.column[j];
	}

	// Get the size and position of the parent window.
	GetClientRect( hWndParent, &rc );

	// Create the list view window
	hWndList = CreateWindowEx(  WS_EX_OVERLAPPEDWINDOW, WC_LISTVIEW, TEXT(""), 
								WS_VISIBLE | WS_CHILD | WS_BORDER | LVS_REPORT |
								LVS_OWNERDRAWFIXED,
								0, ShowToolbar ? TOOLBARHEIGHT : 0, 
								rc.right - rc.left, 
								rc.bottom - rc.top - (ShowToolbar ? TOOLBARHEIGHT : 0),
								hWndParent,	(HMENU)ID_LIST, hInst, NULL ); 
	if ( hWndList == NULL )
		return NULL;

	// Make it a nice fix-width font for easy reading
	SendMessage( hWndList, WM_SETFONT, (WPARAM) hFont, (LPARAM) 0 );

	// Initialize columns
	lvC.mask	= LVCF_FMT | LVCF_WIDTH | LVCF_TEXT | LVCF_SUBITEM;
	lvC.fmt		= LVCFMT_LEFT;	// left-align column

	// Add the columns.
	for ( j = 0; j < sizeof column/sizeof column[0]; ++j )  {
		lvC.iSubItem	= j;
		lvC.cx			= column[j].Width;
		if( j == 2 && !IsNT ) 
			lvC.pszText		= process9xLabel;
		else 
			lvC.pszText		= column[j].Label;
		if ( ListView_InsertColumn( hWndList, j, &lvC ) == -1 )
			return NULL;
	}

	// Set full-row selection
	SendMessage( hWndList, LVM_SETEXTENDEDLISTVIEWSTYLE,
			LVS_EX_FULLROWSELECT, LVS_EX_FULLROWSELECT );

	// Sub-class
	ListViewWinMain = (WNDPROC) SetWindowLongPtr(hWndList, 
                                                 GWLP_WNDPROC,
                                                 (LONG_PTR) ListViewSubclass); 
	return hWndList;
}



/****************************************************************************
* 
*    FUNCTION: SaveFile()
*
*    PURPOSE:  Lets the user go select a file.
*
****************************************************************************/
void SaveFile( HWND hWnd, HWND ListBox, BOOLEAN SaveAs )
{
	OPENFILENAME	SaveFileName;
	TCHAR			szFile[MAX_PATH] = _T(""), fieldtext[MAXITEMLENGTH];
	TCHAR			output[MAXITEMLENGTH*NUMCOLUMNS];
	FILE			*hFile;
	int				numitems;
	int				row, subitem;

	if( SaveAs || !FileChosen ) {
		SaveFileName.lStructSize       = sizeof (SaveFileName);
		SaveFileName.hwndOwner         = hWnd;
		SaveFileName.hInstance         = hInst;
		SaveFileName.lpstrFilter       = _T("File Info (*.LOG)\0*.LOG\0All (*.*)\0*.*\0");
		SaveFileName.lpstrCustomFilter = (LPTSTR)NULL;
		SaveFileName.nMaxCustFilter    = 0L;
		SaveFileName.nFilterIndex      = 1L;
		SaveFileName.lpstrFile         = szFile;
		SaveFileName.nMaxFile          = 256;
		SaveFileName.lpstrFileTitle    = NULL;
		SaveFileName.nMaxFileTitle     = 0;
		SaveFileName.lpstrInitialDir   = NULL;
		SaveFileName.lpstrTitle        = _T("Save File Info...");
		SaveFileName.nFileOffset       = 0;
		SaveFileName.nFileExtension    = 0;
		SaveFileName.lpstrDefExt       = _T("*.log");
		SaveFileName.lpfnHook		   = NULL;
 		SaveFileName.Flags = OFN_LONGNAMES|OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT;

		if( !GetSaveFileName( &SaveFileName )) 
			return;
	} else 
		// open previous szFile
		_tcscpy( szFile, szFileName );

	// open the file
	hFile = _tfopen( szFile, _T("w") );
	if( !hFile ) {
		MessageBox(	NULL, _T("Create File Failed."),
				_T("Save Error"), MB_OK|MB_ICONSTOP );
		return;
	}

	// post hourglass icon
	SetCapture(hWnd);
	hSaveCursor = SetCursor(hHourGlass);

	numitems = ListView_GetItemCount(ListBox);
	for ( row = 0; row < numitems; row++ )  {
		output[0] = 0;
		for( subitem = 0; subitem < NUMCOLUMNS; subitem++ ) {
			fieldtext[0] = 0;
			ListView_GetItemText( ListBox, row, subitem, fieldtext, 256 );
			_tcscat( output, fieldtext );
			_tcscat( output, _T("\t") );
		}
		_ftprintf( hFile, _T("%s\n"), output );
	}
	fclose( hFile );
	_tcscpy( szFileName, szFile );
	FileChosen = TRUE;
	SetCursor( hSaveCursor );
	ReleaseCapture(); 
}


/****************************************************************************
*
*	FUNCTION:	HistoryProc
*
*	PURPOSE:	Processes messages for "Filter" dialog box
*
****************************************************************************/
BOOL APIENTRY HistoryProc( HWND hDlg, UINT message, UINT wParam, LONG lParam )
{
	DWORD			newMaxLines, numRows;
	char			history[64];

	switch ( message )  {
	case WM_INITDIALOG:

		// initialize the controls to reflect the current filter
		sprintf( history, "%d", MaxLines );
		SetDlgItemTextA( hDlg, IDC_HISTORY, history );
		SendMessage (GetDlgItem( hDlg, IDC_SPIN), UDM_SETRANGE, 0L, 
							MAKELONG (9999, 0));
		return TRUE;

	case WM_COMMAND:              
		if ( LOWORD( wParam ) == IDOK )	 {

			// make sure that max lines is legal
			GetDlgItemTextA( hDlg, IDC_HISTORY, history, 64 );
			if( !sscanf( history, "%d", &newMaxLines )) {

				MessageBox(	NULL, TEXT("Invalid History Depth."),
						TEXT("Filter Error"), MB_OK|MB_ICONWARNING );
				return TRUE;
			} 
			MaxLines = newMaxLines;

			EndDialog( hDlg, TRUE );
			if (MaxLines ) {
				numRows = ListView_GetItemCount( hWndList );
				SendMessage(hWndList, WM_SETREDRAW, FALSE, 0);
				while ( numRows >= MaxLines ) {
					ListView_DeleteItem ( hWndList, 0 );
					numRows--;
				}
				SendMessage(hWndList, WM_SETREDRAW, TRUE, 0);
			}
			return TRUE;

		} else if( LOWORD( wParam ) == IDCANCEL ) {

			EndDialog( hDlg, TRUE );
		} else if( LOWORD( wParam ) == IDRESET ) {

			// reset filter to default of none
			SetDlgItemTextA( hDlg, IDC_HISTORY, "0" );
		}
		break;
	case WM_CLOSE:
		EndDialog( hDlg, TRUE );
		return TRUE;
	}
	return FALSE;   
}


/****************************************************************************
*
*	FUNCTION:	AboutDlgProc
*
*	PURPOSE:	Processes messages for "About" dialog box
*
****************************************************************************/
BOOL CALLBACK AboutDlgProc( HWND hDlg, UINT message, UINT wParam, LONG lParam ) 
{
	RECT	parentRc, childRc;
	static HWND		hLink;
	static BOOL		underline_link;
	static HFONT	hFontNormal = NULL;
	static HFONT	hFontUnderline = NULL;
	static HCURSOR	hHandCursor = NULL;
	static HCURSOR	hRegularCursor;
	LOGFONT			logfont;

	switch ( message )  {
	case WM_INITDIALOG:
		GetWindowRect( GetParent(hDlg), &parentRc );
		GetWindowRect( hDlg, &childRc );
		parentRc.left += 70;
		parentRc.top  += 60;
		MoveWindow( hDlg, parentRc.left, parentRc.top, childRc.right - childRc.left, childRc.bottom - childRc.top, TRUE );

		underline_link = TRUE;
		hLink = GetDlgItem( hDlg, IDC_LINK );

		// get link fonts
		hFontNormal = GetStockObject(DEFAULT_GUI_FONT);
		GetObject( hFontNormal, sizeof logfont, &logfont); 
		logfont.lfUnderline = TRUE;
		hFontUnderline = CreateFontIndirect( &logfont );

		// get hand
		hHandCursor = LoadCursor( hInst, TEXT("HAND") );
		hRegularCursor = LoadCursor( NULL, IDC_ARROW );
		return TRUE;

	case WM_CTLCOLORSTATIC:
		if ( (HWND)lParam == hLink )  {
			HDC	hdc = (HDC)wParam;
			SetBkMode( hdc, TRANSPARENT );
			if ( GetSysColorBrush(26/*COLOR_HOTLIGHT*/) )
				SetTextColor( hdc, GetSysColor(26/*COLOR_HOTLIGHT*/) );
			else
				SetTextColor( hdc, RGB(0,0,255) );
			SelectObject( hdc, underline_link ? hFontUnderline : hFontNormal );
			return (LONG)GetSysColorBrush( COLOR_BTNFACE );
		}
		break;

	case WM_MOUSEMOVE: {
		POINT	pt = { LOWORD(lParam), HIWORD(lParam) };
		HWND	hChild = ChildWindowFromPoint( hDlg, pt );
		if ( underline_link == (hChild == hLink) )  {
			underline_link = !underline_link;
			InvalidateRect( hLink, NULL, FALSE );
		}
		if ( underline_link )
			SetCursor( hRegularCursor );
		else
			SetCursor( hHandCursor );
		break;
	}

	case WM_LBUTTONDOWN: {
		POINT		pt = { LOWORD(lParam), HIWORD(lParam) };
		HWND		hChild = ChildWindowFromPoint( hDlg, pt );
		if ( hChild == hLink )  {
			ShellExecute( hDlg, TEXT("open"), TEXT("http://www.sysinternals.com"), NULL, NULL, SW_SHOWNORMAL );
		} 
		break;
	}

	case WM_COMMAND:
		switch ( wParam ) {
		case IDOK:
		case IDCANCEL:
			EndDialog( hDlg, 0 );
			return TRUE;
		}
		break; 

	case WM_CLOSE:
		EndDialog( hDlg, 0 );
		return TRUE;

	default:
		break;
	}
    return FALSE;
}


/******************************************************************************
*
*	FUNCTION:	GetDLLVersion
*
*	PURPOSE:	Gets the version number of the specified DLL.
*
******************************************************************************/
HRESULT 

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
不卡的av网站| 一区二区三区成人| 亚洲另类在线视频| 国模大尺度一区二区三区| 91在线免费播放| 国产丝袜欧美中文另类| 亚洲成人免费在线| 色88888久久久久久影院按摩 | 国产在线观看一区二区| 色综合亚洲欧洲| 国产精品久久久久久久久搜平片 | 亚洲午夜电影网| 国产福利一区在线| 欧美日韩综合一区| 亚洲丝袜精品丝袜在线| 国产成人自拍网| 精品91自产拍在线观看一区| 亚洲成人免费视| 欧美无乱码久久久免费午夜一区| 99国产一区二区三精品乱码| 精品第一国产综合精品aⅴ| 日韩电影一二三区| 欧美tickling网站挠脚心| 日本怡春院一区二区| 亚洲国产成人porn| 亚洲乱码国产乱码精品精小说| 精品国产伦理网| 日韩和欧美一区二区三区| 色婷婷综合久久久中文字幕| 中文字幕av免费专区久久| 国产精品一区一区| 久久精品人人做人人爽人人| 国产精品中文字幕欧美| 国产丝袜欧美中文另类| 国产不卡在线一区| 国产精品拍天天在线| 91丝袜呻吟高潮美腿白嫩在线观看| 欧美日韩久久久| 亚洲午夜国产一区99re久久| 欧美日韩一区精品| 日本成人在线一区| 久久这里都是精品| 成人理论电影网| 国产精品久久久久婷婷| 色欧美88888久久久久久影院| 午夜成人免费视频| 日韩精品自拍偷拍| 日本伊人色综合网| 日韩一区二区三区在线视频| 九九久久精品视频| 国产日产亚洲精品系列| 国产美女一区二区三区| 国产拍欧美日韩视频二区| 不卡大黄网站免费看| 亚洲美女淫视频| 欧美一区二区三区四区视频 | 成人黄色大片在线观看| 国产精品久久看| 欧美一a一片一级一片| 另类人妖一区二区av| 国产欧美一区二区三区鸳鸯浴| 肉色丝袜一区二区| 欧美精品在线观看播放| 久久99精品国产麻豆不卡| 国产精品久久久久久久蜜臀 | 精品国产乱码久久久久久牛牛 | 亚洲成人av中文| 精品国产伦一区二区三区观看体验| 亚洲黄色av一区| 日韩欧美一区二区视频| 97国产精品videossex| 美女免费视频一区| 日韩一区有码在线| 精品国产91洋老外米糕| 色哟哟一区二区| 国产一区二区三区精品视频| 亚洲人成影院在线观看| 精品少妇一区二区三区在线播放| 视频精品一区二区| 国产精品入口麻豆九色| 日韩一级视频免费观看在线| 日本黄色一区二区| 不卡免费追剧大全电视剧网站| 久久亚洲私人国产精品va媚药| 奇米一区二区三区av| 国产精品成人免费在线| 精品999久久久| 欧美精品日韩精品| 色婷婷久久久综合中文字幕| 精品中文字幕一区二区| 午夜国产精品一区| 一区二区高清在线| 国产精品久久久久桃色tv| 精品久久国产字幕高潮| 制服视频三区第一页精品| 欧美视频一区在线| 日本精品裸体写真集在线观看| 一区二区三区久久| 国产欧美久久久精品影院| 日韩你懂的电影在线观看| 欧美日韩国产一区| 欧美三级视频在线播放| 色屁屁一区二区| 91精品福利视频| 91首页免费视频| 99精品国产91久久久久久| 成人国产精品免费观看| 国产精华液一区二区三区| 国产精品自拍毛片| 国产高清成人在线| 国产激情偷乱视频一区二区三区| 亚洲精品视频一区二区| 国产无人区一区二区三区| 中文文精品字幕一区二区| 国产剧情一区二区| 国产喷白浆一区二区三区| 久久久久一区二区三区四区| 欧美va亚洲va在线观看蝴蝶网| 韩国视频一区二区| 国产综合成人久久大片91| 国产美女在线精品| 国产宾馆实践打屁股91| 国产乱码精品一区二区三区av | 欧美www视频| 久久夜色精品一区| 国产精品国产三级国产aⅴ无密码| 欧洲一区二区三区免费视频| 欧美日韩一区中文字幕| 欧美电影影音先锋| www日韩大片| 综合色中文字幕| 天天综合色天天| 极品少妇xxxx偷拍精品少妇| 懂色一区二区三区免费观看| 国产在线精品一区二区三区不卡 | 2023国产精品视频| 欧美色图一区二区三区| 在线播放亚洲一区| 久久久99久久| 亚洲色大成网站www久久九九| 日韩视频免费观看高清完整版在线观看 | 天堂蜜桃一区二区三区 | 精品成人私密视频| 国产精品久久久久久久久图文区 | 成人三级伦理片| 亚洲综合精品久久| 91在线云播放| 欧美视频一区二| 精品国产一区二区三区不卡| 欧美激情艳妇裸体舞| 亚洲国产裸拍裸体视频在线观看乱了| 久久午夜免费电影| 亚洲蜜臀av乱码久久精品| 水蜜桃久久夜色精品一区的特点 | 国产午夜亚洲精品理论片色戒 | 中文字幕乱码日本亚洲一区二区| 欧美精品日韩一区| 国产精品久久毛片av大全日韩| 日韩三级视频在线看| 国产精品久久久久久久蜜臀| 婷婷久久综合九色综合绿巨人| 亚洲综合视频在线| 国产91精品入口| 欧美一级精品在线| 亚洲精品乱码久久久久久日本蜜臀| 国产精品久久久久三级| 免费高清在线一区| 日韩免费高清视频| 麻豆精品视频在线| 99久久婷婷国产综合精品电影| 国产精品日产欧美久久久久| 成人av动漫在线| 欧美一区三区二区| 一区二区三区中文在线| 国产成a人亚洲精| 日韩一区二区精品| 欧美高清一级片在线观看| 欧美aaaaa成人免费观看视频| 偷拍一区二区三区四区| www.综合网.com| 久久精品一二三| 九九在线精品视频| 欧美精品xxxxbbbb| 一区二区三区高清不卡| 成人激情动漫在线观看| 精品1区2区在线观看| 美国十次综合导航| 欧美精品视频www在线观看| 一区二区三区中文字幕在线观看| 午夜欧美大尺度福利影院在线看| 日韩精品免费专区| 欧美三级电影网| 亚洲成人av在线电影| 欧美日韩亚洲综合| 亚洲国产精品久久久久秋霞影院| 一区二区理论电影在线观看| 91精品国产91久久久久久最新毛片| 九色综合国产一区二区三区| 欧美色视频在线观看| 亚洲国产成人高清精品|