dnawujun 发表于 2015-1-7 16:06

Python调用Flux第二讲:新建、载入、关闭、保存Project

本帖最后由 dnawujun 于 2015-1-7 16:09 编辑

上次讲到如何用Python启动、关闭FluxServerhttp://bbs.simol.cn/thread-136819-1-1.html
今天与大家分享下如何用Python操纵FluxServer去载入、关闭、保存和新建Project
这里就不写上C原型函数了,直接给出Python调用
C原型请参考API_Flux_V11.2.doc
一.载入Project:
_FLUX_MP.FMP_loadProject(__serverUid,projectName)

二.关闭
_FLUX_MP. FMP_closeProject( __serverUid)

三.保存
_FLUX_MP.FMP_saveProject(__serverUid)

四.另存为
_FLUX_MP.FMP_saveProjectAs(__serverUid,projectName)

五.新建
这个需要特别说明一下,API_Flux_V11.2.doc中唯独没有newProject这个函数
为啥没有本人没有想明白
但是好在是API_Flux_V11.2.doc中有个这个函数:
H_ERROR FMP_executeJythonCommand (CEDINT32 serverUid,char* commandline)
注意API_Flux_V11.2.doc中错误的写成了executePythonCommand
所以还是看flux_mp.h来得靠谱点
这个函数的作用等同于我们在Flux环境中直接运行pyflux命令,这样啥事都能干,当然新建个Project也不在话下

_FLUX_MP.FMP_executeJythonCommand(self.__serverUid,"newProject()")
当然新建的这个project是没有名字的,如果要保存,一定要用saveProjectAs
不能用saveProject,否则出错

附上写好的测试文件,里面用类包装了下
运行的时候请双击bat文件,不要双击py文件,否则提示丢失rsiflux.dll的错误

lijo 发表于 2015-1-7 22:04

Thank u for the example

watchingu 发表于 2015-1-13 11:41

谢谢分享,此贴不顶,天理难容。谢谢。

补充内容 (2015-1-14 09:07):
为什么,我的电脑上点bat文件,只有一闪而过,没有任何显示和test2文件?

adelski2180 发表于 2015-1-14 09:20

thanks a lot for this exemple

dnawujun 发表于 2015-1-14 20:27

本帖最后由 dnawujun 于 2015-1-14 21:07 编辑

watchingu 发表于 2015-1-13 11:41
谢谢分享,此贴不顶,天理难容。谢谢。

补充内容 (2015-1-14 09:07):

bat中我使用的是64位的flux,如果你的操作系统
是32位的,请修改bat中的相关设置

另外请查看INSTALLFLUX这个环境变量是否是正确的

还有python 2.7安装了没有?

watchingu 发表于 2015-1-15 12:06

本帖最后由 watchingu 于 2015-1-15 13:13 编辑

dnawujun 发表于 2015-1-14 20:27
bat中我使用的是64位的flux,如果你的操作系统
是32位的,请修改bat中的相关设置



我的是64位的操作系统,装的是python3.4;
关于环境变量,flux我默认安装在c盘。INSTALLFLUX=C:\cedrat\Flux_11.2是否有问题?看下图。

环境变量PATH是否有什么要求?

另外直接运行FLUXAPI_test.py显示如下:
Traceback (most recent call last):
File "E:\Lecture2\FluxAPI_Test.py", line 7, in <module>
    server = FluxServer()
File "E:\Lecture2\FluxAPI\Server.py", line 19, in __init__
    self._FLUX_MP = _ct.CDLL(__FLUX_MP_PATH)
File "C:\Python34\lib\ctypes\__init__.py", line 351, in __init__
    self._handle = _dlopen(self._name, mode)
OSError: 找不到指定的模块。

在cmd中运行bat文件显示:

'python‘不是内部或外部命令,也不能运行可执行文件或批处理文件

watchingu 发表于 2015-1-15 13:24

watchingu 发表于 2015-1-15 12:06
我的是64位的操作系统,装的是python3.4;
关于环境变量,flux我默认安装在c盘。INSTALLFLUX=C:\cedra ...

环境变量path增加‘C:\Python34’后,cmd中运行bat文件还是显示:


Traceback (most recent call last):
File "FluxAPI_Test.py", line 9, in <module>
    server.start(ServerType.FLUX2D_64, appPath+r'\TestProjects')
File "E:\Lecture2\FluxAPI\Server.py", line 48, in start
    self.__CheckError(errorId)
File "E:\Lecture2\FluxAPI\Server.py", line 37, in __CheckError
    raise ServerException(errorMsg)
FluxAPI.Server.ServerException: b'Cannot find server'

watchingu 发表于 2015-1-16 08:29

dnawujun 发表于 2015-1-14 20:27
bat中我使用的是64位的flux,如果你的操作系统
是32位的,请修改bat中的相关设置



解决了,我装上python2.7就没问题了。谢谢。{:soso_e102:}
页: [1]
查看完整版本: Python调用Flux第二讲:新建、载入、关闭、保存Project