如何在程序中打开pdf文件?
我在软件中想打开pdf格式的帮助文件,使用了shellexecute函数,但不管用。 如下:
AnsiString str="\help\\userbook.pdf";
ShellExecute(Handle,"open",str.c_str(),"","", SW_SHOW);
搜索过以前的帖子,有人说用vcl库中的fileopen函数,但只能将文件内容读取到给定控件,如下面代码中的Demo控件:
int iFileHandle;
int iFileLength;
char *pszBuffer;
AnsiString FileName="F:\\we.txt";
if(FileExists(FileName))
{
iFileHandle=FileOpen(FileName,fmOpenRead);
iFileLength=FileSeek(iFileHandle,0,2);
FileSeek(iFileHandle,0,0);
pszBuffer=new char[iFileLength+1];
FileRead(iFileHandle,pszBuffer,iFileLength);
FileClose(iFileHandle);
Memo1->Lines->Add(pszBuffer);
}
它不能直接将pdf文件直接读取出来,不知道怎么能实现该功能?此外,我听说可以使用api函数openfile实现此功能,但它的三个参数我不知道该怎样选取。请知道的朋友帮助我一下。
问题点数:0、回复次数:3Top
1 楼kingfish(工作很忙,很少来csdn...)回复于 2003-08-03 19:47:39 得分 0
你还是用绝对路径吧, 另外注意用\\Top
2 楼zhirongwang(云飞扬)回复于 2003-08-03 23:14:30 得分 0
应为软件安装时用户会选择安装路径,而我的帮助文件userbook.pdf因此也会变化的,所以不能使用绝对路径,只能使用相对路径。当前目录下应为“\”。Top
3 楼sun_wyz(欲将心事付瑶琴 知音少 弦断有谁听)回复于 2003-08-03 23:48:50 得分 0
得到程序当前路径应该用
ExtractFilePath(AnsiString(Application->ExeName));Top




