用python做ppt服务用于导入图片
短信预约 -IT技能 免费直播动态提醒
项目需要做WINFORM程序与powerpoint交互,把winform生成的图片自动拷贝到ppt中。目前使用python做了一个简单的服务解决。由于要求是32位程序,所以下面全都是32位的版本。
第一步,安装python2.7 32位。
第二部,安装py2exe 32位。
第三步,安装pywin32 32位。
第四步,用Eclipse(pydev插件)写代码,见附件。主要内容如下:
// wavy_ppt_service.py
import SocketServer
import win32com.client
import sys
class MyTCPHandler(SocketServer.BaseRequestHandler):
"""
The RequestHandler class for our server.
It is instantiated once per connection to the server, and must
override the handle() method to implement communication to the
client.
"""
def handle(self):
# self.request is the TCP socket connected to the client
self.data = self.request.recv(1024).strip()
# print "{} wrote:".format(self.client_address[0])
# print self.data
# just send back the same data, but upper-cased
# self.request.sendall(self.data.upper())
Application = win32com.client.Dispatch("PowerPoint.Application")
currentSlide = Application.ActiveWindow.View.Slide
currentSlide.Shapes.Paste()
HOST, PORT = "localhost", int(sys.argv[1])
#HOST, PORT = "localhost", 9999
# Create the server, binding to localhost on port 9999
server = SocketServer.TCPServer((HOST, PORT), MyTCPHandler)
# Activate the server; this will keep running until you
# interrupt the program with Ctrl-C
server.serve_forever()
就是用客户端和服务端的方式做的一个服务,服务端接收到数据后会将剪切板的图片拷贝到ppt中。
打开cmd,调用buildExe32.bat就可以生成dist目录了,包含着exe 程序。
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341