python教程—如何在python中使用win32 API ?-Python实用宝典

python教程—如何在python中使用win32 API ?

如何在Python中使用win32 API ? 做这件事最好最简单的方法是什么? 你能举几个例子吗?

如何在Python中使用win32 API ?
最好和最简单的方法是什么?
你能举几个例子吗?

回答

PyWin32是一种方法,但是如何使用它呢?一种方法是从一个具体的问题开始,并试图解决它。PyWin32为Win32 API函数提供绑定,这些函数有很多,您必须首先选择一个特定的目标。

在我的Python 2.5安装(Windows上的ActiveState)中,win32包有一个demo文件夹,其中包含的各个部分的示例代码。

例如,下面是copyfilee .py:

    import win32file, win32api import os def ProgressRoutine(TotalFileSize, TotalBytesTransferred, StreamSize, StreamBytesTransferred, StreamNumber, CallbackReason, SourceFile, DestinationFile, Data): print Data print TotalFileSize, TotalBytesTransferred, StreamSize, StreamBytesTransferred, StreamNumber, CallbackReason, SourceFile, DestinationFile ##if TotalBytesTransferred > 100000: ## return win32file.PROGRESS_STOP return win32file.PROGRESS_CONTINUE temp_dir=win32api.GetTempPath() fsrc=win32api.GetTempFileName(temp_dir,'cfe')[0] fdst=win32api.GetTempFileName(temp_dir,'cfe')[0] print fsrc, fdst f=open(fsrc,'w') f.write('xxxxxxxxxxxxxxxxn'*32768) f.close() ## add a couple of extra data streams f=open(fsrc+':stream_y','w') f.write('yyyyyyyyyyyyyyyyn'*32768) f.close() f=open(fsrc+':stream_z','w') f.write('zzzzzzzzzzzzzzzzn'*32768) f.close() operation_desc='Copying '+fsrc+' to '+fdst win32file.CopyFileEx(fsrc, fdst, ProgressRoutine, operation_desc, False, win32file.COPY_FILE_RESTARTABLE)

它展示了如何将CopyFileEx函数与其他一些函数(如GetTempPath和GetTempFileName)一起使用。从这个例子中,您可以对如何使用这个有一个“大致的感觉”。

​Python实用宝典 (pythondict.com)
不只是一个宝典
欢迎关注公众号:Python实用宝典

本文由 Python实用宝典 作者:Python实用宝典 发表,其版权均为 Python实用宝典 所有,文章内容系作者个人观点,不代表 Python实用宝典 对观点赞同或支持。如需转载,请注明文章来源。
0

发表评论