FORM实现中打开图片,链接,文档
参考自itpub上一篇帖子,整理而来
1.添加PL程序库D2kwutil.pll
2.主要实现程序
/*过程参数说明:
v_application ——打开文件的应用程序
v_file_path ——带详细路径的文件名
*/
PROCEDURE p_open_file(v_application VARCHAR2 , v_file_path VARCHAR2) IS
v_app_id PLS_INTEGER;
v_application_path VARCHAR2(200); --应用程路径
v_end_char VARCHAR2(1);
BEGIN --读注册表获取应用程序路径
v_application_path := Win_Api_Environment.Read_Registry('HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\'||v_application,'Path'); --为做到打开文件的统一性,对应用程序路径做相应处理
v_end_char :=SUBSTR(v_application_path , LENGTH(v_application_path));
IF v_end_char = ';' OR v_end_char = '\' THEN
v_application_path := SUBSTR(v_application_path , 1 ,LENGTH(v_application_path)-1);
END IF; --打开文件
--注意:dde.app_begin()函数的第一个参数格式为:应用程序路径 + 空格 + 文件名(含路径)
-- 由此为使文件名中含空格或桌面上的文件也能被打开,我们需给文件名加上双引号
v_app_id :=dde.app_begin(v_application_path||'\'||v_application||' '||'"'||v_file_path||'"' ,dde.app_mode_maximized); --将光标定位到打开的文件中
dde.app_focus(v_app_id);
EXCEPTION WHEN OTHERS THEN
MESSAGE('打开文件失败。');
END; 3.在按钮触发器调用
--打开已存在的EXCEL文件
BEGIN
p_open_file('EXCEL.EXE' ,'E:\test.xls');
END; --打开已存在的WORD文件
BEGIN
p_open_file('WINWORD.EXE' ,'e:\test.doc');
END;
--打开网页
BEGIN
p_open_file('IEXPLORE.EXE' ,'www.163.com');
END;
--打开已存在的图片文件
BEGIN
p_open_file('OIS.EXE' ,'E:\test.JPG');
END;

最新文章

  1. 精通Perl(第2版)
  2. python time和datetime的常用转换处理
  3. Java for LeetCode 236 Lowest Common Ancestor of a Binary Tree
  4. Google测试分享-测试经理
  5. w-WAITING---
  6. jquery之 css()方法。用法类似的有attr(),prop(),val()
  7. Inno Setup打包添加和去除管理员权限
  8. [LeetCode82]Remove Duplicates from Sorted List II
  9. Mybatis源码分析-StatementHandler
  10. jquery通过数值改变球大小
  11. db2数据库常见问题
  12. vue使用vue-awesome-swiper及一些问题
  13. C 语言的 GCC 扩展
  14. MVC强类型视图,详细信息展示【五】
  15. Java 动态生成 PDF 文件
  16. GlusterFS分布式存储学习笔记
  17. MySQL安装失败解决的方法
  18. MySQL(Innodb)索引的原理
  19. Tree-669. Trim a Binary Search Tree
  20. 运行用例时,报错Unknow Error:Element xxx is not clickable……的解决方法

热门文章

  1. [LeetCode] Next Greater Element I 下一个较大的元素之一
  2. HashMap 你真的了解吗?
  3. [HEOI2015]兔子与樱花
  4. hdu 5532(最长上升子序列)
  5. hdu3183 RMQ
  6. getopt_long函数使用【转】
  7. Linux 基本bash命令
  8. 在java中String类为什么要设计成final
  9. 树莓派3B(2)- 配置多个wifi,自动寻找可用网络
  10. URLconnection