IDL程序发布方法总结
2010-01-11 14:58
375 查看
一、7.0之前IDL版本的程序发布
1.Windows下根据主程序名建立project,使用Export按钮发布;
发布后的程序若需要简化文件夹的体积,只需bin.x86下包括freetype2_1_3.dll、idl.dll、idl.pref、MesaGL6_2.dll、MesaGLU6_2.dll、osmesa6_2.dll、ug3220.dll及myApp.exe文件,/lib/hook/下包含idlrtmain.sav文件即可运行,当然了如果系统中调用到相关DLM只需拷贝过来即可。
2.Unix下使用make_rt命令;
二、IDL7.0下的程序发布(Windows)
该版本下用MAKE_RT代替了Export功能,暂时有两种发布方法。
1. IDL的HELP文件中描述
1) 收集相关信息:
选择你要运行的程序的名字;myApp
确定发布的完整输出路径存在,否则make_rt会报错;OutDir
知道包含你程序所有代码的sav文件完整路径;savefile
2)运行MAKE_RT过程
MAKE_RT, 'myApp', OutDir, SAVEFILE=savefile
3)添加额外文件到发布的程序中;
如运行系统中没有安装IDL,则需要先安装一个文件来确保其运行。32位系统运行systemdll32_setup.exe,64位系统运行systemdll64_setup.exe,这两个文件的对应目录为IDL_PATH/ bin/make_rt。
4)修改启动脚本-myApp.ini;
myApp.ini 包含的内容
[DIALOG]
Show=False ;对话框界面是否弹出<True和False>
BackColor=&H6B1F29 ;对话框的背景颜色
Caption=<any string> ;对话框的标题文字
Picture=./splash.bmp ;对话框需要显示的图像,标准大小480 x 335,若图像大则大的部分显示背景色;
DefaultAction=<path to application> ;运行时执行的代码;
2.简化发布方法
在工程的右键属性页面中勾选【创建sav文件】和【嵌入license的sav文件】,构建工程建立myApp.sav文件,直接用myApp.sav文件。在系统的ITT/IDL70/bin/make_rt下面拷贝start_app_win.exe和start_app_win.ini文件到myApp.sav所在目录下,修改start_app_win.ini里面的DefaultAction部分为系统虚拟机路径-rt= myApp.sav即可运行,这个方法简单方便,缺点是需要用系统安装的虚拟机。
3.改进的简化发布方法
上面的方法中的缺点就是告诉程序系统安装的虚拟机路径,我们可以把系统的虚拟机及虚拟机调用文件拷贝出来,直接拷贝到myApp.sav的文件目录下面。然后把DefaultAction=修改为./idlrt.exe -rt=myApp.sav即可。这样就解决了系统不安装虚拟机就不能运行的问题。跟简化导出系统相似,最基本的虚拟机文件包括:freetype2_1_3.dll、idl.dll、MesaGL6_2.dll、MesaGLU6_2.dll、osmesa6_2.dll、ug3220.dll、idlrtmain.sav和idlrt.exe,当然了,为了省事可以把这些文件和start_app_win.exe、start_app_win.ini拷贝一份出来作发布的基本模板用
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/trilobiteh/archive/2009/03/27/4029134.aspx
/////////////////////
/////////////////////
大家都知道IDL程序发布出来或打包是可以直接运行的,区别只是无license虚拟机模式还是有license的runtime模式。
但是如果IDL代码里使用了envi的函数,这时候发布出来的sav文件(或exe、idlrt啥的)就不能直接运行。
运行后就会弹出一个丑陋的envi界面。
解决办法1:
不能运行是因为使用了envi的函数后,需要用envi的方式去运行。(假如的程序叫Protest)
1)先建一个文本文件,命名为protes.run,里面写上程序的名字protest
2)打开idl编辑器把打包程序目录(包含sav文件的目录)修改成Idl工作目录或者是添加到IDL搜索路径
3)建立一个快捷方式。在快捷方式的属性中 目标 加上一下命令
idlde路径 -minimized -noconfirmexit -nosplash @ "run文件路径"
例如:
D:/Program/envi43/IDL63/bin/bin.x86/idlde.exe -minimized -noconfirmexit -nosplash @"D:/protest/protest.run"
最简单的方法:直接拷贝envi的快捷方式,把最后envi的run的文件路径改成你的run文件路径就行
4)直接双击快捷方式就可以直接运行你的程序。
----------------------------------------------------
注意:如果使用idl6.4/envi4.4 运行程序可能会遇到无法初始化envi的问题 ,提示
ENVI_batch_init 找不到或者没定义。
那是因为编辑器本身找到到envi,把IDL根目录加到idl的搜索路径下就可以了
;
;---------------------------------------------
其实用了ENVI函数也是可以绿色发布的,运行连envi都不用装。涉及版权问题,就不在这里透露了--请支持正版哦
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/trilobiteh/archive/2009/03/27/4029093.aspx
1.Windows下根据主程序名建立project,使用Export按钮发布;
发布后的程序若需要简化文件夹的体积,只需bin.x86下包括freetype2_1_3.dll、idl.dll、idl.pref、MesaGL6_2.dll、MesaGLU6_2.dll、osmesa6_2.dll、ug3220.dll及myApp.exe文件,/lib/hook/下包含idlrtmain.sav文件即可运行,当然了如果系统中调用到相关DLM只需拷贝过来即可。
2.Unix下使用make_rt命令;
二、IDL7.0下的程序发布(Windows)
该版本下用MAKE_RT代替了Export功能,暂时有两种发布方法。
1. IDL的HELP文件中描述
1) 收集相关信息:
选择你要运行的程序的名字;myApp
确定发布的完整输出路径存在,否则make_rt会报错;OutDir
知道包含你程序所有代码的sav文件完整路径;savefile
2)运行MAKE_RT过程
MAKE_RT, 'myApp', OutDir, SAVEFILE=savefile
3)添加额外文件到发布的程序中;
如运行系统中没有安装IDL,则需要先安装一个文件来确保其运行。32位系统运行systemdll32_setup.exe,64位系统运行systemdll64_setup.exe,这两个文件的对应目录为IDL_PATH/ bin/make_rt。
4)修改启动脚本-myApp.ini;
myApp.ini 包含的内容
[DIALOG]
Show=False ;对话框界面是否弹出<True和False>
BackColor=&H6B1F29 ;对话框的背景颜色
Caption=<any string> ;对话框的标题文字
Picture=./splash.bmp ;对话框需要显示的图像,标准大小480 x 335,若图像大则大的部分显示背景色;
DefaultAction=<path to application> ;运行时执行的代码;
2.简化发布方法
在工程的右键属性页面中勾选【创建sav文件】和【嵌入license的sav文件】,构建工程建立myApp.sav文件,直接用myApp.sav文件。在系统的ITT/IDL70/bin/make_rt下面拷贝start_app_win.exe和start_app_win.ini文件到myApp.sav所在目录下,修改start_app_win.ini里面的DefaultAction部分为系统虚拟机路径-rt= myApp.sav即可运行,这个方法简单方便,缺点是需要用系统安装的虚拟机。
3.改进的简化发布方法
上面的方法中的缺点就是告诉程序系统安装的虚拟机路径,我们可以把系统的虚拟机及虚拟机调用文件拷贝出来,直接拷贝到myApp.sav的文件目录下面。然后把DefaultAction=修改为./idlrt.exe -rt=myApp.sav即可。这样就解决了系统不安装虚拟机就不能运行的问题。跟简化导出系统相似,最基本的虚拟机文件包括:freetype2_1_3.dll、idl.dll、MesaGL6_2.dll、MesaGLU6_2.dll、osmesa6_2.dll、ug3220.dll、idlrtmain.sav和idlrt.exe,当然了,为了省事可以把这些文件和start_app_win.exe、start_app_win.ini拷贝一份出来作发布的基本模板用
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/trilobiteh/archive/2009/03/27/4029134.aspx
/////////////////////
/////////////////////
大家都知道IDL程序发布出来或打包是可以直接运行的,区别只是无license虚拟机模式还是有license的runtime模式。
但是如果IDL代码里使用了envi的函数,这时候发布出来的sav文件(或exe、idlrt啥的)就不能直接运行。
运行后就会弹出一个丑陋的envi界面。
解决办法1:
不能运行是因为使用了envi的函数后,需要用envi的方式去运行。(假如的程序叫Protest)
1)先建一个文本文件,命名为protes.run,里面写上程序的名字protest
2)打开idl编辑器把打包程序目录(包含sav文件的目录)修改成Idl工作目录或者是添加到IDL搜索路径
3)建立一个快捷方式。在快捷方式的属性中 目标 加上一下命令
idlde路径 -minimized -noconfirmexit -nosplash @ "run文件路径"
例如:
D:/Program/envi43/IDL63/bin/bin.x86/idlde.exe -minimized -noconfirmexit -nosplash @"D:/protest/protest.run"
最简单的方法:直接拷贝envi的快捷方式,把最后envi的run的文件路径改成你的run文件路径就行
4)直接双击快捷方式就可以直接运行你的程序。
----------------------------------------------------
注意:如果使用idl6.4/envi4.4 运行程序可能会遇到无法初始化envi的问题 ,提示
ENVI_batch_init 找不到或者没定义。
那是因为编辑器本身找到到envi,把IDL根目录加到idl的搜索路径下就可以了
;
;---------------------------------------------
其实用了ENVI函数也是可以绿色发布的,运行连envi都不用装。涉及版权问题,就不在这里透露了--请支持正版哦
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/trilobiteh/archive/2009/03/27/4029093.aspx
相关文章推荐
- IDL程序发布方法总结
- 封装了envi函数的IDL发布程序的执行方法 以及注意事项
- Qt程序打包发布方法(使用官方提供的windeployqt工具)
- Qt程序打包发布方法(使用官方提供的windeployqt工具)
- Visual Studio 在发布程序时找不到数据文件的一例解决方法[WPF中一定要将Build Action 设为Content]
- 关于toast的使用方法总结,程序同一时刻只有一个toast,和toast的样式设置。
- 使用Oracle ODP.NET 11g的.NET程序发布方法
- 程序自删除方法大总结
- Qt程序打包发布方法(使用官方提供的windeployqt工具)
- 美化您的程序——SkinMagic使用方法完美总结
- 总结C#中得到程序当前工作目录和执行目录的一些方法
- 程序自删除方法大总结
- 嵌入python的c++程序发布(一)最简单的方法
- C#中WinForm程序退出方法技巧总结
- C# 获取程序当前路径的方法总结
- asp.net 发布到IIS中出现”处理程序“PageHandlerFactory-Integrated”在其模块列表中有一个错误模块“ManagedPipelineHandler”“错误的解决方法
- Qt程序打包发布方法(使用官方提供的windeployqt工具)
- 使用Apache的CXF框架发布Webservice四种方法总结
- Android程序签名-打包-发布方法
- windows下使程序开机自启动方法总结