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;

FORM实现中打开图片,链接,文档(参考自itpub上一篇帖子,整理而来)的更多相关文章

  1. 在Winform界面中实现对多文档窗体的参数传值

    在Winform界面中窗体我们一般使用多文档进行展示,也就是类似一般的选项卡的方式可以加载多个窗体界面.一般来说,我们如果打开新的窗体,给窗体传递参数是很容易的事情,但是在框架层面,一般的窗体是通过动 ...

  2. VC多文档编程技巧(取消一开始时打开的空白文档)

    VC多文档编程技巧(取消一开始时打开的空白文档) http://blog.csdn.net/crazyvoice/article/details/6185461 VC多文档编程技巧(取消一开始时打开的 ...

  3. 在我的电脑中删除wps云文档图标

    在我的电脑中删除wps云文档图标 右键点击win10左下角选择运行,输入regedit打开注册表后,找到以下注册表路径: HKEY_CURRENT_USER\Software\Microsoft\Wi ...

  4. Ubuntu 14 如何打开 .chm格式文档?

    好多手册是.chm格式,Ubuntu是需要安装第三方软件才能打开.chm格式文档,操作方式如下: 到“软件中心” -> 搜索“xchm”,并安装 -> 右键某个.chm文档,选择“属性” ...

  5. 如何在ASP.NET Core 中快速构建PDF文档

    比如我们需要ASP.NET Core 中需要通过PDF来进行某些简单的报表开发,随着这并不难,但还是会手忙脚乱的去搜索一些资料,那么恭喜您,这篇帖子会帮助到您,我们就不会再去浪费一些宝贵的时间. 在本 ...

  6. Elasticsearch中最重要的文档CRUD要牢记

    Elasticsearch文档CRUD要牢记 转载参考:https://juejin.im/post/5ddbf298e51d4523053c42e7 在Elasticsearch中,文档(docum ...

  7. Springboot中整合knife4j接口文档

    在项目开发过程中,web项目的前后端分离开发,APP开发,需要由前端后端工程师共同定义接口,编写接口文档,之后大家都根据这个接口文档进行开发. 什么是knife4j 简单说knife4j就swagge ...

  8. -bash: 无法为立即文档创建临时文件: 设备上没有空间---记一次报错

    故障发生原因 测试环境,之前用该机器做过docker-compose,后来有需要用到该机器上的docker环境,需要将旧的docker容器全部删除,由于之前启动是使用docker-compose启动的 ...

  9. .net应用程序中添加chm帮助文档打开显示此程序无法显示网页问题

    在做.net大作业时添加了chm帮助文档结果在打开时显示“此程序无法显示网页问题”,但是把帮助文档拷到别的路径下却显示正常, 经过从网上查找,终于找到了答案: (1).chm文件的路径中不能含有“#” ...

随机推荐

  1. Ubuntu系统安装Pyenv

    安装Pyenv curl -L https://raw.githubusercontent.com/yyuu/pyenv-installer/master/bin/pyenv-installer | ...

  2. codevs 3249 搭积木

    提交地址:http://codevs.cn/problem/3249/ 3249 搭积木  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 黄金 Gold 题解       题目 ...

  3. 無名(noname)

    [问题描述] 因为是蒯的题所以没想好名字,为什么要用繁体呢?去看<唐诗三百首>吧! 题意很简单,给你一个串,求他有多少个不同的子串,满足前缀为A,后缀为B. 需要注意的是,串中所有的字母都 ...

  4. 2015 多校联赛 ——HDU5371(manacher + 枚举)

    Sample Input 1 10 2 3 4 4 3 2 2 3 4 4   Sample Output Case #1: 9 要求找出一段数字. 将其分成3部分,第①和第②部分成回文字串,第②和第 ...

  5. 笔记10 在XML中声明切面(1)

    1.无注解的Audience package XMLconcert; public class Audience { public void silenceCellPhones() { System. ...

  6. Spring学习笔记6——注解方式测试

    需要下载junit-4.12.jar和hamcrest-all-1.3.jar,将下载好的包导入到项目当中. 修改TestSpring, 并运行1. @RunWith(SpringJUnit4Clas ...

  7. David MacKay:用信息论解释 '快速排序'、'堆排序' 本质与差异

    这篇文章是David MacKay利用信息论,来对快排.堆排的本质差异导致的性能差异进行的比较. 信息论是非常强大的,它并不只是一个用来分析理论最优决策的工具. 从信息论的角度来分析算法效率是一件很有 ...

  8. Python小代码_14_交换 2 个变量的 3 种方式

    a = 4 b = 5 #第一种 c = a a = b b = c print(a, b) #输出结果 #5 4 #第二种 a = a + b b = a - b a = a - b print(a ...

  9. ubuntu + 不识别无线网卡简易处理方式 + 需有线联网

    进入ubuntu, 连接有线网; 系统设置 -> 软件和更新 -> 附加驱动 -> 找到无线网卡驱动并更新 若无候选的无线网卡驱动,我就没招了.

  10. Lucene初体验——Hello Word实现

    1.创建索引 /** * 建立索引 */ public void index(){ IndexWriter writer=null; try { //1.创建Directory //Directory ...