0

xlsレポートをディレクトリからReportSafeアプリに「移動」するVBアプリを作成しています。私はそれを実行する既存のVBアプリでも作業しているので、参照用に使用しています。

ReportSafeは、どのファイルを取得するかを指示するためにlprコマンド(ReportSafe)を必要とするため、あるディレクトリから別のディレクトリにファイルを移動するほど簡単ではありません。

これが私がこれまでに持っているものです:

Imports System.IO
Module Module1

Sub Main()

    ''Declarations
    Dim Files As ArrayList = New ArrayList()
    Dim FileName As String

    ''Write All Files in *directory* to ReportSafe
    Files.Clear()
    Files.AddRange(Directory.GetFiles(*directory*))
    For Each FileName In Files

        Dim RPname As String
        Dim RealName As String
        RPname = FileName.ToString
        RealName = "/"
        RealName = RealName & RPname.Remove(0, 34)

        Dim a As New Process
        a.StartInfo.FileName = "C:\Windows\system32\lpr.exe"
        a.StartInfo.Arguments = "-S*ServerName* -Plp -J" & Chr(34) & RealName & Chr(34) & " " & Chr(34) & RPname & Chr(34)
        a.StartInfo.UseShellExecute = False

    Next
End Sub

End Module

lprコマンド/引数全体がループを引き起こしています。私の質問がReportSafeに固有のものであるかどうかはわかりません。その場合は、ここで運が悪い可能性があります。レポートをReportSafeに移動する既存のアプリからこのコードを取得し、自分で使用できるように調整しましたが、今のところ運がありません。

参考までに、lpr.exeを取得するには、LPRモニターサービスをオンにする必要がありました。

質問:このlprコマンドに渡す適切な引数は何ですか?問題の原因となっているロジックに問題がありますか?

4

1 に答える 1

0

私は自分の参照コードをいじくり回して調べ続け、ロジックにいくつかの欠陥を発見しました。

1つは、渡したレポート名に完全なファイルパスが含まれていなかったことです。もう1つは、でプロセスを開始したことがないということですa.Start()。ルーキーは間違いなく間違い...ハハ

于 2012-09-14T17:58:31.790 に答える