rai002 @ ウィキ
マイドキュメント、ディスクトップ、クイックランチャーの取得 :XP
最終更新:
rai002
-
view
//**********************************************************************
// マイドキュメント、ディスクトップ、クイックランチャーの取得
//**********************************************************************
void get_dir::Get_user_folder()
{
char tDesktop[ MAX_PATH_NAME ];
char tMyDocu[ MAX_PATH_NAME ];
HRESULT err;
//if( os_ver == OS_XP ) //Vistaの対応方法が不明
{
//デスクトップ
err = SHGetFolderPathA(NULL, CSIDL_DESKTOP, NULL, SHGFP_TYPE_CURRENT, tDesktop);
if(err == E_INVALIDARG || err == S_FALSE){
MessageBox(NULL, _T("ディスクトップの検索に失敗しました。\n優先ソートに追加できません。"), _T("注意"), MB_OK);
os_ver = -1;
My_desk = "\0";
}else{
My_desk = tDesktop;
cout << "ディスクトップ検索中...";
filelist_user( My_desk.c_str(), "*", desk_dir_data);
cout << "終了" << endl;
}
//マイドキュメント
err = SHGetFolderPathA(NULL, CSIDL_PERSONAL, NULL, SHGFP_TYPE_CURRENT, tMyDocu);
if(err == E_INVALIDARG || err == S_FALSE){
MessageBox(NULL, _T("マイドキュメントの検索に失敗しました。\n優先ソートに追加できません。"), _T("注意"), MB_OK);
os_ver = -1;
My_docu = "\0";
}else{
My_docu = tMyDocu;
cout << "マイドキュメント検索中...";
filelist_user(My_docu.c_str(), "*", docu_dir_data);
cout << "終了" << endl;
}
//クイックランチャー取得
cout << "クイックランチャーテスト...";
user_dir += "\\";
user_dir += user_name;
user_dir += "\\Application Data\\Microsoft\\Internet Explorer\\Quick Launch";
if( OpenDrive( user_dir ) ){
cout << "OK\nクイックランチャー検索中..." ;
filelist_user(user_dir.c_str(), "*.lnk", quick_data );
cout << "終了" << endl;
}else{
cout << "発見できませんでした。" << endl;
}
}
}