Hi,
i use your script with this vbs:
dim PythonUtils
Set PythonUtils = CreateObject("PythonDemo.Utilities")
call
PythonUtils.add_watermark("d:\pippo.pdf","pluto_pluto","d:\pippooooo.pdf")
and it works well on win7 64Bit May be reinstalling python, or win32com could be the right choice Regards, Matteo Il 21/07/2011 19:05, dennis chou ha scritto:
Hello, I recently upgraded to 32-bit windows 7.For some reason, I am getting an automation error when i try to run my excel VBA script to call my Python COM server.Here's the script for the python COM server. This is creating a COM server to watermark a PDF.import pythoncom class PythonUtilities: _public_methods_ = [ 'add_watermark' ] _reg_progid_ = "PythonDemo.Utilities" # NEVER copy the following ID # Use "print pythoncom.CreateGuid()" to make a new one. _reg_clsid_ = "{B7E3EE50-5E2A-4044-8241-4F76B1DAB894}"def add_watermark(self, pdf_input_path, watermark_string, pdf_output_path):import StringIO from pyPdf import PdfFileReader, PdfFileWriter from reportlab.pdfgen import canvas output = PdfFileWriter() #create watermark packet = StringIO.StringIO() c = canvas.Canvas(packet) c.drawString(500,750,watermark_string) c.save() packet.seek(0) watermark = PdfFileReader(packet) input = PdfFileReader(file(pdf_input_path, "rb")) pdf_path_page_count = input.getNumPages() print pdf_path_page_count for page in range(pdf_path_page_count): print page current_page = input.getPage(page) current_page.mergePage(watermark.getPage(0)) output.addPage(input.getPage(page)) outputStream = file(pdf_output_path, "wb") output.write(outputStream) outputStream.close() # Add code so that when this script is run by # Python.exe, it self-registers. if __name__=='__main__': print "Registering COM server..." import win32com.server.register win32com.server.register.UseCommandLine(PythonUtilities) In Excel VBA, when i try to run Set PythonUtils = CreateObject("PythonDemo.Utilities") i get an automation error stating that the module cannot be found.Looking around on the web, i see that Diego had a similar issue and he resolved it by properly installing Python. I believe Python is properly installed on my workstation so I don't think that is creating the issue.Thanks, dennis _______________________________________________ python-win32 mailing list [email protected] http://mail.python.org/mailman/listinfo/python-win32 Nessun virus nel messaggio. Controllato da AVG - www.avg.com <http://www.avg.com>Versione: 10.0.1390 / Database dei virus: 1518/3778 - Data di rilascio: 21/07/2011
_______________________________________________ python-win32 mailing list [email protected] http://mail.python.org/mailman/listinfo/python-win32
