Win32APIを使ってゴミ箱を空にする方法 C言語向け

SHEmptyRecycleBin関数を使ってゴミ箱を空にする事が出来ますが、
Lcc-Win32では定義されていない様ですので、LoadLibrary関数を使って自力で呼び出します。(^^;

//#include <windows.h>

/*---------------------------------------------------------------
●書式
BOOL EmptyRecycleBin(hWnd, *lpDrive);

	hWnd	: ウインドウのハンドル。必要無い場合はNULL。
	*lpDrive	: 操作するドライブ名。必要無い場合はNULL。

	戻り値	: False = shell32.dllが見つからない
---------------------------------------------------------------*/

BOOL EmptyRecycleBin(HWND hWnd, LPSTR *lpDrive)
{
	HINSTANCE h;

	// DLLをロード
	if (!(h = LoadLibrary("SHELL32.DLL")))
		return(FALSE);

	// 関数の宣言
	BOOL(FAR WINAPI *SHEmptyRecycleBin)(HWND, LPSTR *, UINT);

	// 関数のアドレスを取得
	SHEmptyRecycleBin = (BOOL(FAR WINAPI *)(HWND, LPSTR *, UINT))
		GetProcAddress(h, "SHEmptyRecycleBinA");

	// 関数の呼び出し
	(* SHEmptyRecycleBin)(hWnd, lpDrive, 0);

	// DLLの解放
	FreeLibrary(h);

	return TRUE;
}


Windows/iPhoneアプリ、ゲーム用フリー音源、ヒーリングミュージックのMeteoric Stream -> 資料室 -> ゴミ箱を空にする
▲Top