class LboxUnlha


  EnumListbox



  
// *********************************************************
// リストボックスに列挙
// 戻り値 : 成功 true, 失敗 false
// *********************************************************
BOOL LboxUnlha::EnumListbox( HWND hList, int nIndex, LPTSTR szWildName )
{
	if ( LboxUnlha::lib == NULL ) {
		return false;
	}
	if ( LboxUnlha::hArc == NULL ) {
		return false;
	}

	INDIVIDUALINFO ivinfo;
	int ret;

	ret = UnlhaFindFirst(
		LboxUnlha::hArc,
		szWildName,
		&ivinfo
	);

	char *szBuffer = new char[1024];
	ZeroMemory( szBuffer, 1024 );
	FILETIME ft;
	SYSTEMTIME st;

	while( ret == 0 ) {

		lstrcpy( szBuffer, ivinfo.szFileName );
		wsprintf( szBuffer+lstrlen(szBuffer), "\t%d",
			ivinfo.dwOriginalSize );
		wsprintf( szBuffer+lstrlen(szBuffer), "\t%d",
			ivinfo.dwCompressedSize );
		wsprintf( szBuffer+lstrlen(szBuffer), "\t%d",
			ivinfo.wRatio );

		DosDateTimeToFileTime( ivinfo.wDate, ivinfo.wTime, &ft );
		FileTimeToSystemTime( &ft, &st );
		wsprintf(
			szBuffer+lstrlen(szBuffer),
			"\t%04d/%02d/%02d %02d:%02d:%02d",
			st.wYear,
			st.wMonth,
			st.wDay,
			st.wHour,
			st.wMinute,
			st.wSecond
		);
		wsprintf( szBuffer+lstrlen(szBuffer), "\t%s",
			ivinfo.szAttribute );
		wsprintf( szBuffer+lstrlen(szBuffer), "\t%s",
			ivinfo.szMode );

		LboxListInsert( hList, nIndex, szBuffer );
		ret = UnlhaFindNext(
			LboxUnlha::hArc,
			&ivinfo
		);
		nIndex++;
	}

	delete [] szBuffer;

	return true;
}
  










  infoboard   管理者用   
このエントリーをはてなブックマークに追加





フリーフォントWEBサービス
SQLの窓WEBサービス

SQLの窓フリーソフト

素材

一般WEBツールリンク

SQLの窓

フリーソフト

JSライブラリ