問題タブ [winfax]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - .NET アプリから WinFax Pro COM オブジェクトを使用するにはどうすればよいですか?
私が知っている、WinFax Pro は 1998 年です。
(注: これは明らかに Windows の一部である WinFax.dll ではありません。これは WinFax Pro であり、もともと Delrina から提供され、後に Symantec によって買収された別の商用アドオン アプリです)。
私は今でも WinFax Pro を運用システムとして使用しているオフィスで働いています。彼らは顧客のファックス番号を WinFax Pro の「電話帳」に保存しており、それを使用して顧客にサービス訪問を通知しています。現在の動作方法は、誰かが Mac カレンダーから生成された (印刷された) スケジュールを見て、WinFax 電話帳の該当するすべてのエントリをクリックして、通知 FAX を送信することです。
これは、以前は「回転椅子」の統合と呼ばれていたもののようなものですが、それは 2 つの画面を指していました。これは 2 画面ではなく、1 枚の紙と 1 つの画面です。
とにかく、私はそれを自動化しようとしていますが、問題があります。
良いニュース:
- WinFax Pro は、その機能を COM オブジェクトとして公開します。ファックス sxending エンジン用の WinFax.SDKSend。アドレス帳には WinFax.SDKPhoneBook など。
- WinFax Pro には、これらのさまざまな COM オブジェクトを記述するタイプ ライブラリ wfxctl32.tlb が付属しています。- tlbimport から生成されたラッパーを介して、.NET (C#) から WinFax.SDKSend オブジェクトを正常に使用できます。(私は .NET 3.5 を使用しています。.NET 4.0 はできません) .
悪いニュース:
WinFax.SDKSend 以外の WinFax COM オブジェクトのメソッドを呼び出すことができませんでした。署名は WinFax.SDKSend の署名よりも複雑に見えませんが、例外が発生し続けています。
C# コード:
例外:
例外: System.InvalidCastException: タイプ 'wfxctl32.CSDKPhoneBookClass' の COM オブジェクトをインターフェイス タイプ 'wfxctl32.ISDKPhoneBook' にキャストできません。IID '{A67FCC81-9949-11D0-961E-444553540000}' を持つインターフェイスの COM コンポーネントでの QueryInterface 呼び出しが次のエラーにより失敗したため、この操作は失敗しました: No such interface supported (HRESULT からの例外: 0x80004002 (E_NOINTERFACE)) .
System.RuntimeType.InvokeDispMethod (文字列名、BindingFlags invokeAttr、オブジェクト ターゲット、オブジェクト [] args、Boolean [] byrefModifiers、Int32 カルチャ、文字列 [] namedParameters)
で System.RuntimeType.InvokeMember (文字列名、BindingFlags bindingFlags、バインダー バインダー、
System.RuntimeType.ForwardCallToInvokeMember(String memberName, BindingFlags flags, Object target, Int32[] aWrapperTypes, MessageData& msgData)で
wfxctl32.CSDKPhoneBookClass. GetFolderListFirst(Int16 standardFolder, String folderID)
c# - COM相互運用機能:LPDISPATCHからCCWを取得するにはどうすればよいですか?
IDispatchを介して古いスクールのCOMオブジェクトに接続するアプリをC#で作成しています。私はこの種のコードでこれを行います:
このIDispatchインターフェイスのメソッドの1つは、LPDISPATCHを返します。これは、IDispatchへのロングポインターです。これは別のCOMオブジェクト、ProgIdWinFax.Attachmentです。(WinFax.Attachmentsは、WinFax.Attachmentオブジェクトのコレクションを管理します。)
C#で、そのLPDISPATCHに対応するCOMオブジェクトのメソッドを呼び出すにはどうすればよいですか?私はこのようなことをすることができますか?
c# - 別のサービスから Windows FAX サービスを管理する
私は、Windows (私の場合は win7) の基になる Fax サービスを使用して、FAX ジョブを準備および送信する (Topshelf) サービスを開発しました。.NET 用の winfax.dll (以前の FAXCOM) をラップするだけのFaxDotNetを使用します。
サービスをスタンドアロン (コンソールでホスト) で実行すると、期待どおりに動作します。ただし、サービスを (同じドメイン アカウントで) インストールして開始すると、FAX サービスに FAX を送信する必要があるたびにハングします。唯一の解決策は、タスク マネージャーでサービスを強制終了することです。実行アカウントではないサービスまたはコンソール アプリケーションを実行するときの違いは何ですか?
どうやら、すべての FaxDotNet タスクがハングしているようには見えません。アクティブなジョブの取得と更新は機能します。FAX ジョブを削除すると、エラーがスローされます。
更新:どうやら問題はファックス API の外にあり、PDF コンテンツをファックス プリンタにレンダリングするための印刷コマンドで開始される Acrobat リーダーにあります。別のデフォルトの PDF ビューアに切り替えると、機能します。そのため、「サービス モード」では、Acrobat は呼び出し元の API に終了したことを通知しないようですが、 acrord32.exe プロセスは適切に閉じられます (非表示のダイアログなどはありません)。
また、これをサービスとして実行すると、リモート デバッグを使用できません (スタンドアロンのみ)。その部分について何か提案はありますか? 更新:これは気にしないでください。エラーが表示されますが、それでも機能します。
c# - Windows 2008 FAX と FAXCOMEXLib の問題
FAXCOMEXLib を使用してファックス サービスを実装しています。
Windows サービスを作成し、データベースからファックス ドキュメントを取得し、ファックス サーバーに接続します。すべて問題ありませんが、Windows FAX とスキャンを開くと. ファックス ジョブが送信トレイ キューにありません。しかし、WinForm プログラムで送信すると、ジョブが送信ボックス キューに表示されるので、キャンセルまたは削除できます。
vb.net - ファックスを送信するときに特定のモデムを選択する方法は?
FAXCOMEXLib を介して FAX を送信するアプリケーションを作成しています。私はこのコードを使用しました:
2 つのモデム (Modem1 または Modem2) があります。このコードを使用すると、ファックスの送信は最初に使用可能なモデムによって実行されます。
しかし、自分のルールでは Modem1 または Modem2 を使用して FAX を送信する必要があります。特定のモデムを選択してファックスを送信するにはどうすればよいですか?
delphi - ファックス ジョブのステータスを取得する
ファックスを送信するために以下のコードを試しました:
私がやろうとしていたのは、送信された FAX のジョブ ステータスを取得することでした。追加してみました
ソース コードをコンパイルし、エラーは見つかりませんでしたが、コードを実行した後、FaxJobStatus := CoFaxJobStatus.Create で「クラスが登録されていません」と言って失敗します。
image - ファックスの送信速度に影響を与える要因はどれですか?
ファイルを自動的に生成してファックス送信するアプリケーションがあり、その速度を改善しようとしています。
これらのファイルを Classic PhoneTools というアプリケーションで送信すると、所要時間は 35 ~ 40 秒です。速度は 14,400 bps で、オプションの標準品質 (高品質ではない) を選択したため、Classic PhoneTools は伝送モードが標準であると表示します。
アプリケーションを介して同じファイルを送信すると、所要時間は常に 50 ~ 60 秒です。速度は14,400bpsですが、これを選ばなくても通信モードは常にHQ(High Quality)です。
あらゆる種類の jpg、pdf、bmp ファイルを大小、カラー、グレースケール、または白黒で生成してみましたが、解像度が大きいか小さいかで、半分に表示されるようにデータを縮小している場合にのみ速度が向上します。ページの以下。Classic Phone Tools は、ファイルから取得したデータを何らかの方法で圧縮してから FAX 送信することで、同じ効果を得ていると思います。
最適なファクス速度を得るには、どのタイプのファイルをどのような特性で生成すればよいですか? C# のコード サンプルは優れています。