导航:首页 > 文件教程 > com控件教程

com控件教程

发布时间:2025-03-28 21:34:31

⑴ c如何注册activex控件

如何注册ocx控件

注册ocx控件的方法步骤如下:

1.双击鼠标左键打开c盘。

2.打开“窗口”。如果计算机是32位系统,请将comdlg32.ocx文件移动到system32文件夹中。如果计算机是64位的,请将其移动到sysWOW64文件夹中。

3.按住键盘上的“winr”开始运行。如果计算机是32位,请输入以下字符,然后单击“确定”。

4.如果计算机是64位,请输入以下字符,然后单击“确定”。通过以上步骤可以注册ocx控件。

win7旗舰版activex控件怎么安装?

win7旗舰版activex控件安装方法:

1.WindowsVista中ActiveX控件其它非常简单,点击“开始”→“控制面板”→“程序”,点击“打开或关闭Windows功能”。打开或关闭Windows功能,

2.在“Windows功能”窗口下,选中“ActiveX安装程序服务”的复选框。点击“确定”按钮。ActiveX安装程序服务;

3.Windows会配置该功能,配置后即可使用。

如何使用C#开发“类ActiveX组件”?

1C#开发技术_使用C#开发ActiveX控件20.0.0.0.ActiveX控件以前也叫做OLE控件或OCX控件,它是一些软件组件或对象,可以将其插入到WEB网页或其它应用程序中。

使用A.

笔记本怎么设置浏览器允许使用activex?

设置浏览器允许使用activex方法

1、首先打开开浏览器,在窗口的右上角点击设置图标,在展开的菜单中点击“Internet选项”按钮。

2、在打开的窗口中点击顶部导航条上的“安全”按钮。

3、在安全界面中点击下方的“自定义级别”按钮打开自定义级别设置界面。

4、最后在自定义级别设置界面中将“运行ActiveX控件和插件”选择为“启用”,然后点击“确定”按钮,即可设置浏览器允许使用activex

怎么启用ActiveX控件?

在360浏览器的Internet属性界面中可以启用activex控件,具体操作请参照以下步骤。

1、首先在电脑上打开360浏览器,点击界面右上角的菜单按钮。

3、在Internet属性里面找到“安全”选项卡里面的“自定义级别”,进行点击。

4、接着把三个ActiveX选项启用,点击确定。

5、点击确定按钮后,会弹出一个警告窗口,直接点击是。

6、然后返回属性设置主界面,点击确定。完成以上设置后,即可在360浏览器中启用activex控件。

如何添加ActiveX控件?

解决方法如下:

1、浏览器禁用安装Activex插件:解决的方法就是要把浏览器禁用的Activex插件设置为允许,首先打开浏览器,然后选择菜单栏上工具选项;

2、选择工具选项之后,选择下拉菜单的Internet选项;

3、打开Internet选项之后,切换到安全选项卡,然后选择安全选项卡下的自定义级别;

4、单击自定义级别之后打开安全设置窗口,将重置为一栏的安全级别设置为安全级-中,然后勾选下载已签名的Activex控件一栏的启用,再勾选运行Activex控件和插件一栏的启用,把该控件和插件给启用上来,然后单击确定按钮;

5、设置完成之后单击确定按钮,关闭浏览器,然后重新启用浏览器。拓展资料:ActiveX控件是用于互联网的很小的程序,有时称为插件程序。它们会允许播放动画,或帮助执行任务,如在MicrosoftUpdate安装安全更新,因此可以增强您的浏览体验。ActiveX是Microsoft对于一系列策略性面向对象程序技术和工具的称呼,其中主要的技术是组件对象模型(COM)。在有目录和其它支持的网络中,COM变成了分布式COM(DCOM)。在创建包括ActiveX程序时,主要的工作就是组件,一个可以自足的在ActiveX网络(Windows,Mac,Linux)中任意运行的程序。这个组件就是ActiveX控件。ActiveX是Microsoft为抗衡SunMicrosystems的java技术而提出的,此控件的功能和javaapplet功能类似。Windows操作系统中以OCX结尾的文件,OCX代表"对象链接与嵌入控件"(OLE),这个技术是Microsoft提出的程序技术,用于处理桌面文件的混合使用。COM的概念已经取代OLE的一部分,Microsoft也使用ActiveX控件代表组件对象。

⑵ Java调用com组件操作word使用总结

一 准备工作

先了解一下概念 JACOB 就是 JAVA Bridge的缩写 提供自动化的访问的功能 也是通过JNI功能访问windows平台下的组件或者win 系统库的 这是一个开始于 年的开源项目的成果 有很多使用者对该项目进行了修改 做出了自己的贡献

Jacob下载地址 ?group_id= &package_id=

我在这里下载了Jacob 和jacob 的版本两个版本

这里下载的是目前最新的Jacob 的Release版

另外java操作word方式还有(个人认为通过jacob最好 自己可以扩展 网上除poi之外几乎全是java 技术实现的):

( ):Apache POI Java API To Access Microsoft Format Files();对word处理不够强处理Excel功能可以 但是全是通过java完成的 不需 要组件支持;

( ):java word 是一个在java程序中调用 MS Office Word 文档的组件(类库) 该组件提供了一组简单的接口 以便java程序调用他的服务操作Word 文档 (好象也是用的java 技术);

( )web开发语言操作word的功能最好还是用第三方的控件 看看这个SOAOFFICE 还可以使用js 写VBA呢

二 安装Jacob

Jacob的安装非常的简单 我们解开下载的jacob_ zip 在文件夹中找到jacob dll和jacob jar两个文件 如果是 Jacob 则是jacob x dll( 位 机和jacob x dll( 位)和 jacob jar两个文件 Jacob dll直接放到系统的system 文件夹下就行了 连注册都不用的(或者拷贝到jdk或者jre的bin目 录下也行 当前测试文件所在的目录也行 就是只要在java library path中就可以) 而jacob jar设置到classpath中去就 可以了 或者在IDE开发环境的工程中设置扩展库也一样的 我是这样使用的将jacob x dll或复制 到%Tomcat %in目录下将jacob jar复制到%Tomcot %Sharelib目录下 我使用过程中感觉放到这里是一个最终解决 办法 当你放哪都有问题的时候 我这样用之后再没有出过因为系统不一样出现的各种各样的问题 当然你作的是web的项目

注意使用jacob一写要安装word 我装的word 如果是操作word 就不用jacob了(好像这方面的API)

对jacob dll几种配置方法 (网上看到)

: :

把jacob dll文件 复制到 windowssystem 目录下 (注 我用的时候这个方法不能运行)

把jacob dll放入 Javajdk _ jrein目录下 把jacob jar放入 Javajdk _ jrelibext目录下 可以正常运行

把jacob dll放入 glcsrc目录下 把jacob jar放入WEB INFlib目录下 也是可以正常运行

三 使用(以下是我改写的一个word操作类 希望有兴趣的朋友完善 记得发给我一份)

//注意java操作word关键是定位操作对象;

import jacob activeX ActiveXComponent;

import Dispatch;

import Variant;

/**

* jacob操作MSword类

* @author

*/

public class WordBean {

// word文档

private Dispatch doc;

// word运行程序对象

private ActiveXComponent word;

// 所有word文档集合

private Dispatch documents;

// 选定的范围或插入点

private Dispatch selection;

private boolean saveOnExit = true;

public WordBean()throws Exception{

if (word == null) {

word = new ActiveXComponent( Word Application );

word setProperty( Visible new Variant(false)); //不可见打开word

word setProperty( AutomationSecurity new Variant( )); //禁用宏

}

if (documents == null)

documents = word getProperty( Documents ) toDispatch();

}

/**

* 设置退出时参数

*

* @param saveOnExit

* boolean true 退出时保存文件 false 退出时不保存文件

*/

public void setSaveOnExit(boolean saveOnExit) {

this saveOnExit = saveOnExit;

}

/**

* 创建一个新的word文档

*

*/

public void createNewDocument() {

doc = Dispatch call(documents Add ) toDispatch();

selection = Dispatch get(word Selection ) toDispatch();

}

/**

* 打开一个已存在的文档

*

* @param docPath

*/

public void openDocument(String docPath) {

closeDocument();

doc = Dispatch call(documents Open docPath) toDispatch();

selection = Dispatch get(word Selection ) toDispatch();

}

/**

*只读 打开一个保护文档

* @param docPath 文件全名

* @param pwd 密码

*/

public void openDocumentOnlyRead(String docPath String pwd)throws Exception {

closeDocument();

// doc = Dispatch invoke(documents Open Dispatch Method

// new Object[]{docPath new Variant(false) new Variant(true) new Variant(true) pwd}

// new int[ ]) toDispatch();//打开word文件

doc = Dispatch callN(documents Open new Object[]{docPath new Variant(false)

new Variant(true) new Variant(true) pwd new Variant(false)}) toDispatch();

selection = Dispatch get(word Selection ) toDispatch();

}

public void openDocument(String docPath String pwd)throws Exception {

closeDocument();

doc = Dispatch callN(documents Open new Object[]{docPath new Variant(false)

new Variant(false) new Variant(true) pwd}) toDispatch();

selection = Dispatch get(word Selection ) toDispatch();

}

/**

* 把选定的内容或插入点向上移动

*

* @param pos

* 移动的距离

*/

public void moveUp(int pos) {

if (selection == null)

selection = Dispatch get(word Selection ) toDispatch();

for (int i = ; i < pos; i++)

Dispatch call(selection MoveUp );

}

/**

* 把选定的内容或者插入点向下移动

*

* @param pos

* 移动的距离

*/

public void moveDown(int pos) {

if (selection == null)

selection = Dispatch get(word Selection ) toDispatch();

for (int i = ; i < pos; i++)

Dispatch call(selection MoveDown );

}

/**

* 把选定的内容或者插入点向左移动

*

* @param pos

* 移动的距离

*/

public void moveLeft(int pos) {

if (selection == null)

selection = Dispatch get(word Selection ) toDispatch();

for (int i = ; i < pos; i++) {

Dispatch call(selection MoveLeft );

}

}

/**

* 把选定的内容或者插入点向右移动

*

* @param pos

* 移动的距离

*/

public void moveRight(int pos) {

if (selection == null)

selection = Dispatch get(word Selection ) toDispatch();

for (int i = ; i < pos; i++)

Dispatch call(selection MoveRight );

}

/**

* 把插入点移动到文件首位置

*

*/

public void moveStart() {

if (selection == null)

selection = Dispatch get(word Selection ) toDispatch();

Dispatch call(selection HomeKey new Variant( ));

}

/**

* 从选定内容或插入点开始查找文本

*

* @param toFindText

* 要查找的文本

* @return boolean true 查找到并选中该文本 false 未查找到文本

*/

@SuppressWarnings( static access )

public boolean find(String toFindText) {

if (toFindText == null || toFindText equals( ))

return false;

// 从selection所在位置开始查询

Dispatch find = word call(selection Find ) toDispatch();

// 设置要查找的内容

Dispatch put(find Text toFindText);

// 向前查找

Dispatch put(find Forward True );

// 设置格式

Dispatch put(find Format True );

// 大小写匹配

Dispatch put(find MatchCase True );

// 全字匹配

Dispatch put(find MatchWholeWord True );

// 查找并选中

return Dispatch call(find Execute ) getBoolean();

}

/**

* 把选定选定内容设定为替换文本

*

* @param toFindText

* 查找字符串

* @param newText

* 要替换的内容

* @return

*/

public boolean replaceText(String toFindText String newText) {

if (!find(toFindText))

return false;

Dispatch put(selection Text newText);

return true;

}

/**

* 全局替换文本

*

* @param toFindText

* 查找字符串

* @param newText

* 要替换的内容

*/

public void replaceAllText(String toFindText String newText) {

while (find(toFindText)) {

Dispatch put(selection Text newText);

Dispatch call(selection MoveRight );

}

}

/**

* 在当前插入点插入字符串

*

* @param newText

* 要插入的新字符串

*/

public void insertText(String newText) {

Dispatch put(selection Text newText);

}

/**

*

* @param toFindText

* 要查找的字符串

* @param imagePath

* 图片路径

* @return

*/

public boolean replaceImage(String toFindText String imagePath) {

if (!find(toFindText))

return false;

Dispatch call(Dispatch get(selection InLineShapes ) toDispatch()

AddPicture imagePath);

return true;

}

/**

* 全局替换图片

*

* @param toFindText

* 查找字符串

* @param imagePath

* 图片路径

*/

public void replaceAllImage(String toFindText String imagePath) {

while (find(toFindText)) {

Dispatch call(Dispatch get(selection InLineShapes ) toDispatch()

AddPicture imagePath);

Dispatch call(selection MoveRight );

}

}

/**

* 在当前插入点插入图片

*

* @param imagePath

* 图片路径

*/

public void insertImage(String imagePath) {

Dispatch call(Dispatch get(selection InLineShapes ) toDispatch()

AddPicture imagePath);

}

/**

* 合并单元格

*

* @param tableIndex

* @param fstCellRowIdx

* @param fstCellColIdx

* @param secCellRowIdx

* @param secCellColIdx

*/

public void mergeCell(int tableIndex int fstCellRowIdx int fstCellColIdx

int secCellRowIdx int secCellColIdx) {

// 所有表格

Dispatch tables = Dispatch get(doc Tables ) toDispatch();

// 要填充的表格

Dispatch table = Dispatch call(tables Item new Variant(tableIndex))

toDispatch();

Dispatch fstCell = Dispatch call(table Cell

new Variant(fstCellRowIdx) new Variant(fstCellColIdx))

toDispatch();

Dispatch secCell = Dispatch call(table Cell

new Variant(secCellRowIdx) new Variant(secCellColIdx))

toDispatch();

Dispatch call(fstCell Merge secCell);

}

/**

* 在指定的单元格里填写数据

*

* @param tableIndex

* @param cellRowIdx

* @param cellColIdx

* @param txt

*/

public void putTxtToCell(int tableIndex int cellRowIdx int cellColIdx

String txt) {

// 所有表格

Dispatch tables = Dispatch get(doc Tables ) toDispatch();

// 要填充的表格

Dispatch table = Dispatch call(tables Item new Variant(tableIndex))

toDispatch();

Dispatch cell = Dispatch call(table Cell new Variant(cellRowIdx)

new Variant(cellColIdx)) toDispatch();

Dispatch call(cell Select );

Dispatch put(selection Text txt);

}

/**

* 获得指定的单元格里数据

*

* @param tableIndex

* @param cellRowIdx

* @param cellColIdx

* @return

*/

public String getTxtFromCell(int tableIndex int cellRowIdx int cellColIdx) {

// 所有表格

Dispatch tables = Dispatch get(doc Tables ) toDispatch();

// 要填充的表格

Dispatch table = Dispatch call(tables Item new Variant(tableIndex))

toDispatch();

Dispatch cell = Dispatch call(table Cell new Variant(cellRowIdx)

new Variant(cellColIdx)) toDispatch();

Dispatch call(cell Select );

String ret = ;

ret = Dispatch get(selection Text ) toString();

ret = ret substring( ret length() ); //去掉最后的回车符;

return ret;

}

/**

* 在当前文档拷贝剪贴板数据

* @param pos

*/

public void pasteExcelSheet(String pos) {

moveStart();

if (this find(pos)) {

Dispatch textRange = Dispatch get(selection Range ) toDispatch();

Dispatch call(textRange Paste );

}

}

/**

* 在当前文档指定的位置拷贝表格

*

* @param pos

* 当前文档指定的位置

* @param tableIndex

* 被拷贝的表格在word文档中所处的位置

*/

public void Table(String pos int tableIndex) {

// 所有表格

Dispatch tables = Dispatch get(doc Tables ) toDispatch();

// 要填充的表格

Dispatch table = Dispatch call(tables Item new Variant(tableIndex))

toDispatch();

Dispatch range = Dispatch get(table Range ) toDispatch();

Dispatch call(range Copy );

if (this find(pos)) {

Dispatch textRange = Dispatch get(selection Range ) toDispatch();

Dispatch call(textRange Paste );

}

}

/**

* 在当前文档指定的位置拷贝来自另一个文档中的表格

*

* @param anotherDocPath

* 另一个文档的磁盘路径

* @param tableIndex

* 被拷贝的表格在另一格文档中的位置

* @param pos

* 当前文档指定的位置

*/

public void TableFromAnotherDoc(String anotherDocPath int tableIndex

String pos) {

Dispatch doc = null;

try {

doc = Dispatch call(documents Open anotherDocPath)

toDispatch();

// 所有表格

Dispatch tables = Dispatch get(doc Tables ) toDispatch();

// 要填充的表格

Dispatch table = Dispatch call(tables Item

new Variant(tableIndex)) toDispatch();

Dispatch range = Dispatch get(table Range ) toDispatch();

Dispatch call(range Copy );

if (this find(pos)) {

Dispatch textRange = Dispatch get(selection Range )

toDispatch();

Dispatch call(textRange Paste );

}

} catch (Exception e) {

e printStackTrace();

} finally {

if (doc != null) {

Dispatch call(doc Close new Variant(saveOnExit));

doc = null;

}

lishixin/Article/program/Java/hx/201311/26342

阅读全文

与com控件教程相关的资料

热点内容
jsp页面打印表格 浏览:492
chsize头文件 浏览:208
eclipsec工程文件怎么打开 浏览:904
六轴加工中心用什么编程软件 浏览:411
兴义网站建设多少钱 浏览:720
stl格式文件变tap 浏览:226
如何不沉迷网络游戏 浏览:891
qq收藏的文件在哪 浏览:594
更换支付宝邮箱账号密码 浏览:288
苹果手机怎么没4g网络设置密码 浏览:716
华为e1750客户端升级软件 浏览:631
47e7bre升级 浏览:510
各种版本的童话 浏览:840
一键隐藏程序软件 浏览:781
android代码添加动画 浏览:134
word简体繁体 浏览:988
qq离线传文件用的协议 浏览:225
wife显示无法连接网络怎么办 浏览:599
联通宽带故障错误常见代码 浏览:235
iso文件包括有哪些资料 浏览:79

友情链接