使用ShellExcete打开pdf文件。请问大侠这段程序错误出现在哪儿?该怎么改正确?
来源:互联网 发布:数据挖掘 股票预测 编辑:程序博客网 时间:2024/05/14 19:11
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls,ShellAPI;
type
TForm1 = class(TForm)
Button1: TButton;
OpenDialog1: TOpenDialog;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
function TeShuFileName(FFilename: string): string;
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
function TForm1.TeShuFileName(FFilename: string): string;
var
i:Integer;
s:string;
begin
for i := 1 to Length(FFilename) do
begin
if (FFilename[i]=',') or (FFilename[i]=',') or//路径中逗号
(FFilename[i]='?') or (FFilename[i]='?') or//路径中有问号
(FFilename[i]='《') or (FFilename[i]='《') or //路径中有引号
(FFilename[i]='“ ') or (FFilename[i]='“ ') or //引号
(FFilename[i]='”') or (FFilename[i]='”')
then
s :=s +'"'+FFilename[i]+'"' //加上双引号
else
s :=s+FFilename[i];
end;
FFilename:='"'+FFilename+'"';//路径中有空格
s:=FFilename;
Result :=s;
end;
procedure TForm1.Button1Click(Sender: TObject);//处理文件名中有标点符号,如引号、书名号的情况
var
str:string;
s:string;
begin
if OpenDialog1.Execute then
begin
str:=OpenDialog1.FileName;
end;
str:=TeShuFileName(str);
s:=Format('/e,/select,%s',[str]);//format的用法
s:='"'+s+'"';//处理带空格的情况
ShellExecute(0, 'open', 'AcroRd32.exe', PChar(s), '', SW_SHOWMAXIMIZED);
end;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls,ShellAPI;
type
TForm1 = class(TForm)
Button1: TButton;
OpenDialog1: TOpenDialog;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
function TeShuFileName(FFilename: string): string;
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
function TForm1.TeShuFileName(FFilename: string): string;
var
i:Integer;
s:string;
begin
for i := 1 to Length(FFilename) do
begin
if (FFilename[i]=',') or (FFilename[i]=',') or//路径中逗号
(FFilename[i]='?') or (FFilename[i]='?') or//路径中有问号
(FFilename[i]='《') or (FFilename[i]='《') or //路径中有引号
(FFilename[i]='“ ') or (FFilename[i]='“ ') or //引号
(FFilename[i]='”') or (FFilename[i]='”')
then
s :=s +'"'+FFilename[i]+'"' //加上双引号
else
s :=s+FFilename[i];
end;
FFilename:='"'+FFilename+'"';//路径中有空格
s:=FFilename;
Result :=s;
end;
procedure TForm1.Button1Click(Sender: TObject);//处理文件名中有标点符号,如引号、书名号的情况
var
str:string;
s:string;
begin
if OpenDialog1.Execute then
begin
str:=OpenDialog1.FileName;
end;
str:=TeShuFileName(str);
s:=Format('/e,/select,%s',[str]);//format的用法
s:='"'+s+'"';//处理带空格的情况
ShellExecute(0, 'open', 'AcroRd32.exe', PChar(s), '', SW_SHOWMAXIMIZED);
end;
阅读全文
0 0
- 使用ShellExcete打开pdf文件。请问大侠这段程序错误出现在哪儿?该怎么改正确?
- 请问,这样的错误该怎么处理,按照网上的配置好了,可是一直不成功,LINK : fatal error LNK1104: 无法打开文件“opencv_world331.lib”请问,这样的错误该怎么处理
- 这段程序应该怎么改?
- pdf文件怎么打开
- 使用ireport做pdf报表,生成的pdf一直都是文件损坏,无法打开,哪位大侠指点一下
- 打开pdf出现文件损坏并且无法修复错误解决
- 请问各位大侠 在界面适配时出现下了问题怎么解决额
- 在繁体系统编的VBA程序,在简体系统打开中文字体全是乱码,请问该怎么解决?
- win2003+asp+oracle出现“未找到提供程序.该程序可能未正确安装”错误
- 工作中该怎么修改pdf文件
- 该怎么写博客,博客征程的正确打开方式
- .net问题:尝试打开web项目,web服务器报告以下错误:http/1.1 500 Internal server error,请问该怎么解决这个问题??
- 用电脑怎么打开pdf文件阅读
- PDF文件怎么打开,如何编辑修改PDF文件内容
- 非常想知道该程序是怎么写的,各位大侠帮帮忙!!
- 下面这段应该怎么改?
- 打开电脑出现程序错误
- gcc编译C程序出现段错误
- 面向对象:心动不是爱情,心定才是爱
- 关于APK的签名
- 【notepad++】更换主题
- 一个略微有趣的platform game
- 杭电ACM OJ 1021 Fibonacci Again 斐波那次数列 发现规律 简化操作
- 使用ShellExcete打开pdf文件。请问大侠这段程序错误出现在哪儿?该怎么改正确?
- Codeforces Round #446(div 2) C. Pride
- 常见web漏洞——启动了不安全的HTTP方法解决办法
- 为所欲为之API兼容-Runtime消息转发
- 再次制作小游戏
- SQLException: Invalid parameter object type. Expected 'java.util.ArrayList' but found 'java.util.Ar
- Linux下10个常用的SSH命令选项
- mapreduce集群的搭建及安装
- 第一章 用神经网络来识别手写数字(1)