2009-02-13 6 views
1

J'essaye d'envoyer des fax avec un programme .NET (C#) en utilisant Crystal Reports et Unimessage Pro (ou tout autre programme de fax).Envoi de fax avec .NET

Mon problème est que Unimessage Pro (et d'autres programmes de fax) utilise des polices d'imprimante pour les commandes de fax. Comme .NET ne prend pas en charge les polices d'imprimante, les commandes de télécopie du rapport sont converties en Courrier Nouveau. Le résultat de ceci est que le programme de télécopie ne reconnaît pas les commandes de télécopie mais les voit en texte brut et le fax n'est pas envoyé. Comment envoyer une télécopie avec Crystal Reports et .NET?

+0

« utilise les polices d'imprimante pour la télécopie Commandes 'Comment une police peut être une commande? –

+0

Je pense qu'il veut dire utilise une police résidente spéciale de l'imprimante.Comme cela équivaudrait à une commande PCL ou une séquence d'échappement et que vous appelez une spéci La police al suivie par le numéro de fax ... pourrait être faux, mais c'est ce que j'ai recueilli. –

+0

"Utilise les polices d'imprimante pour les commandes de fax" n'implique pas qu'une police est une commande. Cela signifie qu'il utilise des "polices d'imprimante" (dans ce cas, je pense que les polices de fax intégrées) lors de l'exécution des commandes de fax. – bzlm

Répondre

3

J'ai eu cette réponse de Wordcraft (société derrière Unimessage Pro)

  1. Créez un fichier nommé WilCapAX.INI dans le dossier Windows principal, par exemple C: \ Windows \ WilCapAX.INI Le fichier doit contenir les éléments suivants: [WilCapAX] Commandes = C: \ Commands.DAT Où "C: \ Commands.DAT" est le nom de un fichier texte que vous allez pour créer dans votre application .NET pour transmettre les commandes intégrées
    à Unimessage Pro. Vous pouvez modifier le chemin si nécessaire, mais conserver le fichier abrégé et les noms de dossier
    .

  2. Dans votre application .NET lorsque vous avez quelque chose à envoyer par
    Unimessage Pro vous devez alors:

    2.1 Créer un fichier texte nommé, en fonction du nom défini dans WilCapAX.INI, C: \ Commandes.DAT contenant:

    BLANK LINE 
    [[TO=Fax Number or Email address]] 
    [[SUBJECT=Whatever you want the subject to be]] 
    

    La première ligne du fichier doit être vide ou contenir autre chose qu'une commande intégrée - il sera sautée. Les autres lignes du fichier C: \ Commands.DAT doivent chacune contenir une commande incorporée.

    2.2 Imprimer sur un message à l'imprimante Unimessage Pro - le Unimessage imprimante Pro accepte le travail d'impression et sera look pour le fichier spécifié dans WilCapAX.INI. Si le fichier spécifié dans WilCapAX.INI (C: \ Commands.DAT) est trouvé, les commandes intégrées en sont extraites et puis le fichier "C: \ Commands.DAT" est supprimé et la capture d'impression est traitée avec la commande extraite du fichier C: \ Commands.DAT.

    2.3 Attendez que le fichier C: \ Commands.DAT disparaisse (indiquant qu'il a été traité par l'imprimante Unimessage Pro ), puis répétez si nécessaire.

Ce résolu le problème! :)

0

Lorsque vous dites utilise les polices d'imprimante, je suppose que vous devez envoyer une PCL (ou similaire) des commandes telles que:

<esc>(s..... 

Si tel est le cas, je ne pense pas que vous pouvez intégrer que dans celui avec Crystal directement. Nous avons dû envoyer des séquences spéciales dans Crystal par le passé (sans l'échappement), dans ce cas, nous créons une nouvelle boîte de formules et ne modifions aucun des éléments autres que la police (choisissez Courier). Ces éléments doivent passer directement à l'imprimante sans trop être convertis par le pilote. Ceci peut; cependant, ne pas résoudre votre problème.

L'autre option qui devrait fonctionner est de construire votre propre pilote d'imprimante avec le kit de développement de pilotes de Microsoft. Vous pouvez créer votre propre mini-pilote et associer une police à un appel de police spécifique. Ainsi, lorsque vous spécifiez cette police, le code est correctement inséré dans votre code.

Vous pouvez également traiter ceci de la manière que nous faisons (pas avec Crystal mais un autre rapport similaire). Nous utilisons RightFax comme serveur de fax et il permet la 'pièce jointe' de fichiers à travers un fichier de métadonnées. Nous générons le rapport, le placons dans un emplacement spécifique au format PDF ou autre, puis transmettons à RightFax un fichier de métadonnées contenant le numéro de fax du destinataire et une commande lui indiquant de joindre le fichier au système de fichiers.

Le RightFax 'attach' fichier ressemble à ceci:

{{begin}} 
{{nocover}} 
{{fax (403) 555-1212}} 
{{subject Test Fax}} 
{{attach c:\reports\report1.pdf delete}} 
{{imagetype pdf}} 
{{end}} 
1

Joyfax client Console 1.0 (beta)

Note: S'il vous plaît lanuch Joyfax v5.2 client ou au-dessus avant runnig cette application.

JoyfaxConsole [Options] -f [; ...] [; fileN] -r ""

-f file or folder Files or files in sub folders to be faxed. 
     i.e: C:\Test\;C:\MyPDFs\*.pdf 
-r  Recipients Recipient list. For more see Fax Recipients. Must begin and end with double quotation marks("). 

Options:

-a Synchronous Wait until fax sent completed; 
-s Subject Subject of fax, i.e.: "Joyfax Sell Sheet"; 
-m Meno Memo of fax, i.e.: "Joyfax Server 5-user license"; 
-c CoverPage Cover Page profile to be used; 
-d Header Header & footer profile to be used, 
    0 = None; 1 = General; 2 = Compact; 3 = Detailed 
-k Kill Delete input files if fax sent successfully. 

Retrun:

0 - Success; 
1 - Initialize failed; 
2 - Invalid parameter; 
3 - Unknown erorr (may unsupported file type). 

Exemple :

JoyfaxClientConsole -d 2 -f "C: \ Mes PDFs \ D90.PDF" -r "Samm Kivin < 866-6554-564>; Vert < (846) 6554-564> »

de JoyfaxClientConsole C: \ MyPDFs * .pdf; D: \ Sell.xls -r "Samm Kivin < 866-6554-564>"

JoyfaxClientConsole -s "Joyfax Vente feuille" -m "Joyfax Server 5-licence utilisateur " -f D: \ Sell.xls -r "Kivin < 866-6554-564>"

+0

Êtes-vous affilié à ce produit? –

Questions connexes