posts - 495,comments - 227,trackbacks - 0

          http://hi.baidu.com/jiaxw/blog/item/93b619f38c5d805b342accf8.html


          在此之前我已經找過很多國外的文章,很多人都碰到類似的情況
          就是通過asp.net 調用服務器上的FlashPrinter.exe 程序,(這個程序可以通過虛擬打印機把所有可打印的文件轉換成swf文件)
          我這里是通過Process類調用的
          CMD的命令式這樣的
          xxx\\xxx\\FlashPrinter.exe "d:\\1.txt" -o "d\\1.swf"
          我在服務器上直接輸入上面命令行正常運作
          但是通過web 也就是Network Services用戶組調用就沒有正常輸出文件,
          我調試過可以正常調用FlashPrinter.exe 進程,但就一直沒有輸出文件

          我曾經從新安裝新的window2003用于測試
          第一次我用了好幾個小時去搞:
          1.IIS權限
          2.用戶組權限
          3.本地策略
          4.打印機權限
          我忘記了是搞了那些東西,不知不覺就可以通過asp.net 正常使用那個功能.
          后來我為了再次測試,我把系統還原了,結果我怎么在設置也不能正常調用那個功能了
          在此之前已經設置過很多東西上面所說的是我不知道怎么樣設置就可以運行了
          PS:我身邊有好幾臺機器,有些是正常的,有些就是一直煩著..查看事件日志說是已經成功轉送打印命令,但就是打印的字節數為0

          想把pdf轉換成swf文件,就在asp.net后臺代碼中啟動了flashpaper進程,但同樣的代碼在winxp下,好用。但在 win2003下,就不好用了。代碼如下:

          public static void ConvertPdfToSwf(HttpRequest reqeust, String styFileName, String[] dataFileNames, String outputFileFullName)
          {
          try
          {
          String flashPrinter = String.Concat(AppDomain.CurrentDomain.BaseDirectory, "FlashPrinter.exe");//FlashPrinter.exe
          System.Diagnostics.ProcessStartInfo startInfo = new System.Diagnostics.ProcessStartInfo(flashPrinter);
          if (String.IsNullOrEmpty(outputFileFullName))
          {
          return ;
          }
          Int32 intLastDot = outputFileFullName.LastIndexOf(".");
          //*********Temp Programming****************************************
          Int32 intLast = outputFileFullName.LastIndexOf("\\");
          String path = outputFileFullName.Substring(0, intLast);
          String tempFileName = path + "\\PdfToSwf20080923.pdf";
          //*****************************************************************
          String swfFileName = String.Concat(path, "\\PdfToSwf20080923.swf");
          startInfo.Arguments = String.Concat(tempFileName, " -o ", swfFileName);
          System.Diagnostics.Process process = new System.Diagnostics.Process();
          process.StartInfo = startInfo;
          Boolean isStart = process.Start();
          process.WaitForExit();
          process.Close();
          }
          catch(Exception ex)
          {
          throw ex;
          }

          posted on 2010-04-03 23:25 SIMONE 閱讀(3118) 評論(5)  編輯  收藏 所屬分類: flash

          FeedBack:
          # re: 在web 上調用exe權限解決方法 ,關于FlashPaper2 命令行FlashPrinterexe的調用
          2010-04-09 16:24 | fff
          我也遇到同樣的問題啊,不知道有么有人解決  回復  更多評論
            
          # re: 在web 上調用exe權限解決方法 ,關于FlashPaper2 命令行FlashPrinterexe的調用
          2010-04-16 17:15 | 瘋狂的石頭
          看了半天,你解決了這個問題沒?  回復  更多評論
            
          # re: 在web 上調用exe權限解決方法 ,關于FlashPaper2 命令行FlashPrinterexe的調用[未登錄]
          2011-02-17 10:57 | Billy
          請保證保存目錄的寫入權限!  回復  更多評論
            
          # re: 在web 上調用exe權限解決方法 ,關于FlashPaper2 命令行FlashPrinterexe的調用
          2011-10-24 11:09 | 路過
          看來看去就是那么幾篇文章 沒一個新鮮的....汗...  回復  更多評論
            
          # re: 在web 上調用exe權限解決方法 ,關于FlashPaper2 命令行FlashPrinterexe的調用[未登錄]
          2014-11-19 14:52 | 紅狐
          請檢查寫入目錄有無給予ASP.NET的寫入權限  回復  更多評論
            
          主站蜘蛛池模板: 吉林市| 汽车| 江门市| 刚察县| 拉萨市| 永丰县| 额济纳旗| 株洲市| 突泉县| 常州市| 柳江县| 金阳县| 吉隆县| 宝坻区| 新巴尔虎右旗| 叶城县| 三原县| 庆城县| 吉隆县| 项城市| 沙洋县| 彰武县| 腾冲县| 保康县| 涞源县| 安西县| 伊通| 从江县| 南京市| 图木舒克市| 宁陕县| 玉环县| 张家口市| 纳雍县| 呈贡县| 尼勒克县| 南雄市| 高陵县| 玉龙| 司法| 黔东|