日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > C# >内容正文

C#

C# 调用FLashPaper2(二)

發布時間:2023/12/19 C# 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C# 调用FLashPaper2(二) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
C#調用FlashPaper2?[2011-4-14 10:06:41]

c:相信大家都知道“FlashPaper”這個東西是用來干什么的,他是一個轉換的軟件,通過虛擬打印機把文件流轉換成PDF或SWF文件。
這里廢話就不多說了,直接看如何使用C#調用FlashPaper2:

protected void Button1_Click(object sender, EventArgs e)
{
?string root = Server.MapPath("~/");? // 獲取虛擬路徑。
?string path = this.FileUpload1.PostedFile.FileName;? // 獲取上傳文件的路徑。
?string name = System.IO.Path.GetFileName(path);? // 獲取上傳文件的名稱,包括后綴。
?string outPath = string.Format("{0}{1}{2}", root, "allFiles/", name);? // 合并上傳文件的保存路徑。
?string swfPath = string.Format("{0}{1}{2}.swf", root, "swfFiles/", Guid.NewGuid().ToString("N"));? // 合并Swf文件保存的路徑。
?this.FileUpload1.PostedFile.SaveAs(outPath);? // 保存上傳的文件到指定的路徑。
?// 通過注冊表獲取FlashPrinter.exe注冊的路徑。注:/初始化/初始化.bat?? 一定要執行過此文件后才可以獲取路徑。
?string appPath = (string)Microsoft.Win32.Registry.GetValue(@"HKEY_LOCAL_MACHINE\SOFTWARE\Macromedia\FlashPaper Printer\2\Installation", "AppPath", null);
?string param = string.Format("{0} -o {1}", outPath, swfPath);? // 合并需要的參數信息。
?// 創建一個進程。
?System.Diagnostics.Process p = new System.Diagnostics.Process();
?p.StartInfo.FileName = appPath;? // 賦值進程要執行的應用程序。
?p.StartInfo.Arguments = param;? // 賦值應用程序可用參數。
?p.StartInfo.UseShellExecute = false;
?p.StartInfo.RedirectStandardInput = false;
?p.StartInfo.RedirectStandardOutput = false;
?p.StartInfo.RedirectStandardError = true;
?p.StartInfo.CreateNoWindow = true;? // 是否創建顯示窗口。
?try
?{
??bool IsStart = p.Start();? // 開始執行程序,如果執行成功返回True,否則False。
??p.WaitForExit();? // 等待關聯進程退出。
??p.Close();? // 關閉進程。
?}
?catch(Exception ex)
?{
??throw ex;
?}
?Response.Write("完成。");???????
}說明:
Button1_Click:Button服務器控件的Click事件,用于上傳到服務器的按鈕。
FileUpload1:FileUpload服務器控件,用于上傳文件。
這下好了,就可以把想轉換的文件轉換成SWF文件,執行一下試試。
如果是在VS調試情況下是可以正常執行的,那么你在通過IIS里執行一下試試,你可能會發現什么都正常也沒報什么錯誤,還有可能你會發現在拒絕訪問等類似的問題。
怎么解決?為什么會出現這些問題?我一步步來解決上面的兩個問題。

?

問題一:
點擊按鈕后文件可以上傳,就是SWF文件沒有轉換成功,也沒報什么錯誤?
首先想一下,IIS是有一定權限的,不是任何程序都可以隨便調用一些文件的,這么一想那就是權限問題了。加大權限,直接把程序池屬性中標識選項卡里的預定義賬戶改為本地,這樣應該沒問題了。

問題二:
點擊上傳按鈕時出現拒絕訪問的問題?
首先看一下有沒有IO權限,如果還行,請參考問題一的方法。

小結:此程序當前環境(系統:Win2003、工具:VS2005、SDK:v2.0)測試通過。在使用FlashPaper過程中,如果你想轉換什么文件就需要安裝什么軟件。比如說我想轉換Office(doc/ppt/xls)文檔,你必須得安裝Office軟件才可以進行轉換。
這里把需要的文件及Aspx文件打包上傳了,有需要的朋友可以在此下載。注:壓縮包內FlashPaper2為綠色版,壓縮包注釋中有包含一個安裝版注冊碼。

轉載于:https://www.cnblogs.com/Tylerwang/archive/2012/05/10/2494269.html

總結

以上是生活随笔為你收集整理的C# 调用FLashPaper2(二)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。