FlashPrinter转PDF为swf 在本地调试没任何问题 大家可能会遇到的问题。。。

zhaochanglong 2011-10-24 11:29:40
方法

public bool ConvertPdfToSwf(string inFilename, string swfFilename)
{
bool isStart;
try
{
System.Diagnostics.ProcessStartInfo startInfo = new System.Diagnostics.ProcessStartInfo(@"D:\FlashPaper2\FlashPrinter.exe");
startInfo.Arguments = string.Concat(Server.MapPath(inFilename), " -o ", Server.MapPath(swfFilename));
System.Diagnostics.Process process = new System.Diagnostics.Process();
process.StartInfo = startInfo;
isStart = process.Start();
process.WaitForExit();
process.Close();
}
catch (Exception ex)
{
throw ex;
}
return isStart;
}

调用:

string savedocfile ="../../studyFile/PDF/" + docFile;
string saveswffile = "../../studyFile/PDF/" + saveswfFile;
bool bo= ConvertPdfToSwf(savedocfile, saveswffile);


在本地可以正常调用。。 在服务器上面没有任何反映 调用方法也返回true.. 在网上找了很多文章 但都每一个详细一点解决方案。。。希望高手指点。。。服务器:window server 2003,iis 6.0
...全文
516 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
nianyuyuyu 2013-01-04
  • 打赏
  • 举报
回复
我也遇到了这样的问题,但我用的是tomcat服务器,IDEA开发,jsp程序,请问这个怎么办啊?
tancong0817 2012-12-26
  • 打赏
  • 举报
回复
IIS 网站相应应用程序池->属性->标识->预定义账户->选择本地系统!完美解决!
ningxiaocc 2012-03-12
  • 打赏
  • 举报
回复
是服务器权限的问题 正解。。。。咋整啊 我也遇到问题了!!!
zhaochanglong 2011-10-25
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 net_lover 的回复:]

你先使用一个固定的文件进行测试,或者调用命令行的转换进行测试,以发现问题出在哪里,
比如
Process.Start("x:\\FlashPaper2\\FlashPrinter.exe x:\\xx.pdf -o x:\\xx.swf")
[/Quote]


非常感谢。。。 是服务器权限的问题 正解。。。。结贴给分
孟子E章 2011-10-24
  • 打赏
  • 举报
回复
1,FlashPrinter.exe等安装到网站目录下,不要放到网站外面。使用Server.MapPath得到物理路径
2,要转换的文件都要使用Server,MapPath转换成物理路径
3,权限的问题,匿名帐号没有执行exe的权限,要在应用程序池-标识里面,选择本地系统或者输入管理员帐号,或者在web.config;里面采用模拟的方法
<configuration>
<system.web>
<identity impersonate="true" userName="机器名\Administrator" password="Administrator的密码" />
</system.web>
</configuration>
zhaochanglong 2011-10-24
  • 打赏
  • 举报
回复
救命啊。。。来个人救命啊。。。
zhaochanglong 2011-10-24
  • 打赏
  • 举报
回复
高手指点 指点。。。 很多人都遇到过了。。
zhaochanglong 2011-10-24
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 cf_nxcxy 的回复:]

服务器上安装FlashPaper了么??
FlashPrinter的路径正确么??
[/Quote]

安装了 路径也是正确的 但就是没有效果 杯具。。。
cf_nxcxy 2011-10-24
  • 打赏
  • 举报
回复
服务器上安装FlashPaper了么??
FlashPrinter的路径正确么??
zhaochanglong 2011-10-24
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 net_lover 的回复:]

你先使用一个固定的文件进行测试,或者调用命令行的转换进行测试,以发现问题出在哪里,
比如
Process.Start("x:\\FlashPaper2\\FlashPrinter.exe x:\\xx.pdf -o x:\\xx.swf")
[/Quote]

你那有参考的例子吗? 有的话发我一个把 maochong@mofang.cn
孟子E章 2011-10-24
  • 打赏
  • 举报
回复
你先使用一个固定的文件进行测试,或者调用命令行的转换进行测试,以发现问题出在哪里,
比如
Process.Start("x:\\FlashPaper2\\FlashPrinter.exe x:\\xx.pdf -o x:\\xx.swf")
zhaochanglong 2011-10-24
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 net_lover 的回复:]

有啥问题?
[/Quote]
方法执行过后 返回了true 但文件夹里面就是没有生成swf的文件。。 郁闷喽。。
孟子E章 2011-10-24
  • 打赏
  • 举报
回复
有啥问题?
zhaochanglong 2011-10-24
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 net_lover 的回复:]

1,FlashPrinter.exe等安装到网站目录下,不要放到网站外面。使用Server.MapPath得到物理路径
2,要转换的文件都要使用Server,MapPath转换成物理路径
3,权限的问题,匿名帐号没有执行exe的权限,要在应用程序池-标识里面,选择本地系统或者输入管理员帐号,或者在web.config;里面采用模拟的方法
<configuration>
<system……
[/Quote]
我安你说的做了 但是好像还是有点问题....


public bool ConvertPdfToSwf(string inFilename, string swfFilename)
{
bool isStart;
//try
//{
string flashPrinter = Server.MapPath("../../FlashPaper2/FlashPrinter.exe");
System.Diagnostics.ProcessStartInfo startInfo = new System.Diagnostics.ProcessStartInfo(flashPrinter);
startInfo.Arguments = string.Concat(Server.MapPath(inFilename), " -o ", Server.MapPath(swfFilename));
System.Diagnostics.Process process = new System.Diagnostics.Process();
process.StartInfo = startInfo;
isStart = process.Start();
process.WaitForExit();
process.Close();
//}
//catch (Exception ex)
//{
// throw ex;
//}
return isStart;
}

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧