首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ Builder >

打开文件夹后怎么选中文件,迅雷那样的选中文件

2012-03-08 
打开文件夹后如何选中文件,迅雷那样的选中文件。 - C++ Builder / Windows SDK/API在做报表导出,导出完后要

打开文件夹后如何选中文件,迅雷那样的选中文件。 - C++ Builder / Windows SDK/API
在做报表导出,导出完后要打开文件夹,但不知道如何实现选中文件。
  fastreport导入excel 换页的时候有空行 如何去掉,。

[解决办法]
第一个问题:

C/C++ code
#include <tchar.h>#include <stdio.h>TCHAR szFile[] = TEXT("C:\\windows\\system32\\calc.exe");TCHAR szParam[256] = { 0 };_stprintf(szParam, TEXT("/n,/select,%s"), szFile);::ShellExecute(0, TEXT("Open"), TEXT("Explorer.exe"), szParam, NULL, SW_SHOW);
[解决办法]
C/C++ code
//在资源浏览器中打开并且选中//在include 最开始加入以下define#define NO_WIN32_LEAN_AND_MEAN  #include <shlobj.h>BOOL explore(wchar_t *path){    BOOL bResult;    LPSHELLFOLDER IpsfDeskTop;    LPITEMIDLIST pidl;    HRESULT hres;    SHGetDesktopFolder(&IpsfDeskTop);    hres = IpsfDeskTop->ParseDisplayName(NULL, NULL, path, NULL, &pidl, NULL);    hres = IpsfDeskTop->Release();    if (FAILED(hres)) return FALSE;    typedef HRESULT (WINAPI *MYFUNC)(LPCITEMIDLIST*, UINT, LPCITEMIDLIST*, DWORD);    HINSTANCE ghShell32 = LoadLibrary("Shell32.DLL");    if (ghShell32 != NULL)    {        MYFUNC SHOpen = (MYFUNC)GetProcAddress(ghShell32, "SHOpenFolderAndSelectItems");        if (SHOpen != NULL)        {            CoInitialize(NULL);            SHOpen((LPCITEMIDLIST*)pidl, 0, NULL, 0);            CoUninitialize();            bResult = TRUE;        }        FreeLibrary(ghShell32);        bResult = FALSE;    }    return bResult;} 

热点排行