![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
|||
|
|||
|
No debes instalar la libreria faxcomex.dll, sino, en Delphi, "Import Type Library", dentro de "Project", y despues busca "Microsoft Fax Service Extended COM type library".
A partir de aqui, en "Activex" te apareceran unos iconos sobre el fax, que sinceramente no he usado, pero mi ejemplo anterior te deberia funcionar. Evidentemente, debes haber instalado antes el servicio de fax de windows.... Por otro lado, por MP Nuppy me ha pasado la solución a mi problema, y la expongo aqui por si a alguien mas le ocurre. La idea es instalar otro programa, distinto del Adobe, para que cuando imprimas no te saque el documento en pantalla, asi que hay que descargarse gsview (está en Google) e instalarlo junto con la ultima version de Ghostscript (de la misma pagina), y entonces modificar el registro de windows para que asocie la impresion del archivo .pdf al gsprint. Busca en el registro: HKey_CLASSES_ROOT->AcroExch.Document.7->shell->Printto->Command la clave por defecto pondrá algo del Adobe, hazte una copia de seguridad, porsiaca y pon lo siguiente: "C:\Archivos de programa\Ghostgum\gsview\gsprint.exe" "%1" -printer ""%2"" "%3" "%4" Lo que haces con eso es que cuando se quiera mandar a imprimir un archivo .pdf llame al gsprint y no al acrobat reader. De esta forma se logra que se puedan mandar varios fax automatizados (con el adobe se cuelga) y no se abra el reader. La unica contra que tiene es que aparece una ventada de cmd por un lapso muy breve (menos de 1s) y se cierra. Gracias Nuppy !!! ![]() ![]() |
|
#2
|
|||
|
|||
|
gracias, pero...
He estado buscando en: en Delphi, "Import Type Library", dentro de "Project", y despues busca "Microsoft Fax Service Extended COM type library".
pero no tengo la opción "Microsoft Fax Service Extended com type Library" me gustaría saber si me puedes facilitar a qué libreria va a asociada, lo pone dentro de "import type library". He instalado la opción de envio de fax de microsoft, pero sigo sin ver ésta opción, los unicos componentes que consigo ver en la pestaña "Activex" son los que he conseguido tras importar "Faxcom.dll" y de éste modo si he conseguido verlos pero no son correspondientes al código que aqui pusiste, ¿Pudieras facilitarme la respuesta de a qué ocx, dll... o demás librería puede corresponder para buscarla y poder importarla? ¿qué otra cosa puede faltarme? Muchas gracias! Nuppy |
|
#3
|
|||
|
|||
|
Pues no se me ocurre que puede fallarte, esta noche voy a instalar delphi en un portatil que tengo en casa, a ver si me pasa lo mismo que a ti, y a ver si encuentro que ocurre.
En "Import Type Library" pone exactamente lo que te he puesto "Microsoft Fax Extended...etc" |
|
#4
|
|||
|
|||
|
Buenas tardes mgomez,
Para mayor información puedo decirte que cuando entras en la ventana de "Import Type Library", dentro de "Project", podemos ver el listado de dll y ocx del Pc que podemos importar a nuestro delphi para poder utilizarlo. Quisiera preguntarte si en donde a ti te pone: "Microsoft Fax Extended..." que libreria te viene en el path. Por otro lado te comentaré que yo encontré la libreria "fxscomex.dll" y la he importado, pudiendo asi importar a "C:\Archivos de programa\Borland\Delphi5\Imports" los ficheros: FAXCOMEXLib_TLB.pas FAXCOMEXLib_TLB.dcu FAXCOMEXLib_TLB.dcr Con los cuales tu código me deja compilarlo sin ningun problema. Pero al ejecutar me sale el siguiente error: "Project Project1.exe raised exception class EOLESysError with message 'Clase no registrada'. Process stopped. Use Step or run to continue" Este error lo encuentro cuando al ejecutar pasa por la linea: vlserver := CoFaxServer.Create; Creo que falta algo por instalar aunque si es cierto que sigo sin poder localizar la opción "Microsoft Fax Extended...". La impresora virtual de fax la tengo instalada correctamente. Si al instalarlo tu en el portatil vieras algun error similar, agradeceria tu información. Muchas gracias Un saludo Nuppy |
|
#5
|
|||
|
|||
|
He mirado la ventana de Import Type Library, y efectivamente, es el fxscomex.dll, por el error que te da, está claro que hay que instalar algo para que registre la clase.... pero no se que es. A ver si al instalarlo en el portatil descubro algo !!
|
|
#6
|
|||
|
|||
|
Tengo más información,
Como no me aparecian los componentes en la pestaña activex, lo que hice fue de los ficheros importados en delphi FAXCOMEXLib_TLB.pas FAXCOMEXLib_TLB.dcu FAXCOMEXLib_TLB.dcr generar un package yendo a "components" y despues "install components" , en la pestaña "into new package" donde con el *.Pas he generado un package y luego lo he instalado, de éste modo he conseguido los componentes en el "activex" asi todo me ha seguido dando un error de "la clase no registrada" asi que he cogido la libreria "fxscomex.dll" y la he registrado en windows con un programa que encontré llamado: "AjpdSoft Registro de OCX y DLL" a partir de aqui he conseguido ejecutar, evitando el problema de "clase no registrada" ahora el problema continua al llegar a la linea: vlserver.Connect('FAX'); del código: uses FAXCOMEXLib_TLB; procedure TForm1.BitBtn1Click(Sender: TObject); var vlserver: IFaxServer; vlDocument : IFaxDocument; begin vlserver := CoFaxServer.Create; vlDocument := CoFaxDocument.Create; vlserver.Connect('FAX'); vlDocument.Body := 'D:\prueba.pdf'; vlDocument.DocumentName := 'Prueba'; vlDocument.Priority:=fptHIGH; vlDocument.Recipients.Add('937111111','Nombre'); vlDocument.AttachFaxToReceipt := True; vlDocument.CoverPageType := fcptNONE; vlDocument.ScheduleType:=fstNOW; vlDocument.ReceiptType:=frtNONE; vlDocument.Submit('FAX'); vlserver.Disconnect; end; Del cual entiendo que la palabra "FAX" es el nombre de la impresora que necesitamos utilizar para poder enviar.. pero al parecer no es asi, empiezo a dudar del significado de su contenido pues me da error de conexión. Ha sido he querido contar como lo he resuelto por si alguien le pasa algo similar. He de aclarar que mi impresora virtual de "FAX" el servicio de microsoft lo hace funcionar perfectamente, asi como si yo cogo un archivo PDF y al darle enviar selecciono esta impresora y le indico el número de tfno éste se envia correctamente, asi que descarto que el modem esté incorrecto. ¿alguna idea por este nuevo punto? ¿quizá me he equivocado con algo de lo anterior? Muchas gracias a todos Nuppy |
|
#7
|
|||
|
|||
|
Bueno, en mi portatil tenia una instalacion de Windows de hace precisamente 1 semana, asi que estaba "limpia". He ido a Delphi, "Import Type Library" y no me aparecia el Microsoft Fax COM Extended...., he agregado el servicio de fax de Windows, y entonces si me aparecia ... nuppy, seguro que lo tenias instalado bien?, bueno, de todas maneras veo que lo has resuelto de otra manera.
Respecto a Connect('FAX') .... mil disculpas.... 'FAX' es el nombre del servidor REMOTO de fax (es que yo uso uno...), asi que si usas el local, pon Connect('') y luego Submit(''), puedes mirar en el manual de microsoft: He modificado el codigo inicial, en el primer mensaje, por si alguien lo copia, que no le pase lo mismo. Espero que con esto te funcione bien. |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Tecla de control+Z y Escape para poder enviar SMS a través de un Modem | vejerf | Varios | 3 | 25-04-2008 17:09:54 |
| Intercambiar XML´s a través de una pág. ASP | bataola | Internet | 0 | 13-09-2006 16:30:01 |
| Enviar una estructura de datos a traves de Socket en Delphi | ---baja--- | API de Windows | 3 | 29-06-2006 21:53:48 |
| conectar a través de ssh | barrauda | Linux | 2 | 29-05-2006 12:57:44 |
| Enviar email a través de Outlook Express | kambiz | Internet | 9 | 20-10-2004 22:58:12 |
|