读书人

帮忙看看ShellExecute()函数的用法多

发布时间: 2012-03-21 13:33:15 作者: rapoo

帮忙看看ShellExecute()函数的用法,谢谢了,呵呵呵!
[code=C/C++][/code]
void SearchTXT(AnsiString Dir)
{
TSearchRec sr;
if(FindFirst(Dir+"\\"+"新建文本文档("+n+").txt",faAnyFile,sr)==0)
{
do
{
n++;
}
while(FindNext(sr)==0);
FindClose(sr);
}
}
void __fastcall TForm1::Txt1Click(TObject *Sender)
{
AnsiString ss = GetCurrentDir();
SearchTXT(ss);
TStrings* aa = new TStringList();
aa->SaveToFile(ss+"\\"+"新建文本文档("+n+").txt");
delete aa;
//ShellExecute(Handle,"open","新建文本文档"+n+".txt",NULL,NULL,SW_SHOW);这个地方我能在文档名这个参数这里设置变///量吗的?因为我要打开的文档是临时新建的,所以不能指定固定的文档名,试了下不成功!不知道怎么办啊!

}

[解决办法]

C/C++ code
AnsiString __fastcall CrnGetAvailableTxtFileName(AnsiString strDir){    int nIndex = 0; // 从0开始遍历    AnsiString strFileName;    while (FileExists(strFileName.sprintf(            "%s\\新建文本文档(%d).txt", strDir, ++nIndex)))    {}    return strFileName;}void __fastcall TForm1::Button1Click(TObject *Sender){    AnsiString strDir = GetCurrentDir();    AnsiString strFileName = CrnGetAvailableTxtFileName(strDir);    TStrings *lst = new TStringList();    lst->Add("test");    lst->SaveToFile(strFileName);    delete lst;    ShellExecute(Handle, "open", strFileName.c_str(), NULL, NULL, SW_SHOW);} 

读书人网 >C++ Builder

热点推荐