Saerchpath(6) ってみた
SearchPath 関数はその名の通り、指定されたファイルを検索する関数だよっ。
MSDN のリファレンス見ても、どーすりゃいいのか分からなかったので書いてみる。
まずはシグネチャ、プロトタイプ宣言を見てみやう:
DWORD SearchPath( LPCTSTR lpPath, LPCTSTR lpFileName, LPCTSTR lpExtension, DWORD nBufferLength, LPTSTR lpBuffer, LPTSTR* lpFilePart );
lpPath には検索するフォルダを、lpFileName にはファイル名、
lpExtension には拡張子を入れるようだね。
でもここには NULL をいれてもいいよ。lpFileName に拡張子が付いてるなら、ね。
次の… うん、めんどくさっ。
まあ、書いてみりゃわかるか〜ってことで書いてみた。
#include <stdio.h> #include <tchar.h> #include <windows.h> int main(int argc, char* argv[]) { if ( argc == 1 ) { printf( "ひきす〜ちょうだいっ!" ); return -1; } _TCHAR find_filename_buffer[MAX_PATH]; _TCHAR* file_part; int hr = SeaarchPath( argv[1], argv[2], NULL, MAX_PATH, find_filename_buffer, &file_part ); if ( hr != 0 ) { printf( "%s: %s\n", find_filename_buffer, file_part ); } }