ocx如何修改版本号?在线等

96掌门师兄 2011-08-29 05:24:22
现在我创建的ocx工程中,默认的版本号是1.0.0.1,入何升级版本号呢?我用的是VS2005,在属性栏中的确有一个1.0的版本显示,但是修改不了?
...全文
438 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
枫叶萧子 2011-08-29
  • 打赏
  • 举报
回复
在源文件里面有个****.RC文件,双击它就可以看到一个Version文件夹,在其下面有个VS_VERSION_INFO,双击它就可以修改了~~
ouyh12345 2011-08-29
  • 打赏
  • 举报
回复
在资源视图里,找到版本号,并修改
康斯坦汀 2011-08-29
  • 打赏
  • 举报
回复
不是你的ocx是何种方式创建的,MFC还是COM API,一般MFC的版本号在资源文件中,
资源文件的VS_VERSION_INFO节记录的版本号会出现在应用程序的属性栏中,例如
XXX.rc 文件,查找VS_VERSION_INFO节:

/////////////////////////////////////////////////////////////////////////////
//
// Version
//

VS_VERSION_INFO VERSIONINFO
FILEVERSION 3,4,6,719
PRODUCTVERSION 3,4,6,719
FILEFLAGSMASK 0x3fL
#ifdef _DEBUG
FILEFLAGS 0x1L
#else
FILEFLAGS 0x0L
#endif
FILEOS 0x40004L
FILETYPE 0x2L
FILESUBTYPE 0x0L
BEGIN
BLOCK "StringFileInfo"
BEGIN
BLOCK "040904b0"
BEGIN
VALUE "Comments", "XXXX"
VALUE "CompanyName", "XXXX"
VALUE "FileDescription", "XXXX"
VALUE "FileVersion", "3.4.7.719"
VALUE "OriginalFilename", "XXX.ocx"
VALUE "ProductName", "XXX"
VALUE "ProductVersion", "3.4.7.719"
END
END
BLOCK "VarFileInfo"
BEGIN
VALUE "Translation", 0x409, 1200
END
END

对于ocx除了上面这个资源文件,还跟控件的注册信息有关,这个版本号一般放置在 .idl文件中,
例如:

#include <olectl.h>
#include "..\version.h"

[
uuid(MYCTL_TLIB), helpstring(MYCTL_FULLNAME),
version(MYCTL_VERSION), lcid(0x0000), control
]

version.h的相关内容:

#define MYCTL_VERSION 3.4

mayudong1 2011-08-29
  • 打赏
  • 举报
回复
全工程搜索1.0这个字符串,总能看到是在哪写的
控件是标准的ActiveX控件,适用于Windows平台下的所有开发编程工具,例如Delphi、VB、C#、C++、Java、PB等。控件封装了标准AT指令、手机与计算机的通信内容,提供了发送短信、接收短信、拨打电话、接听电话等函数和事件,非常方便二次开发。 控件需要的硬件设备是高深商公司研发的“手机盒”(见下面的名词解析)或能与计算机连接的手机(要求手机通过COM口通信)。 名词解析: 超长短信 --- 当短信超过68个字时,就是超长短信。手机自动把超长短信分成几条短信发送,接收时也分多条短信形式存储在SIM卡中,在读短信时,临时组装成超长短信。 手机盒 --- 与计算机连接的设备,插入SIM卡才能使用。该设备尺寸为100mm×58mm×24.5mm(长×宽×高,其中天线21mm),有一个标准的USB接口,通过标准的USB连接线,连接计算机。该设备不用电池,启动计算机后,就会自动开启。利用此设备,可以把计算机当成手机使用,在电脑上收发短信,拨打电话。一台计算机可以连接多个设备,并通过参数devid区分不同的手机盒。有关手机盒的更多详细信息,请拨打电话020-38259081咨询。 主要属性: BaudRate --- 与计算机连接的波特率,最好不要人工设置,而是采用设置函数SetupPort自动查找。 Port --- 与计算机连接的端口,同上不要人工设置。 JDConnected --- 与计算机是否已连接,即是否已经打开端口。 QueryATSeconds --- 当执行AT查询指令时,最长等待反应时间,默认2秒。 ReadLongSmsSeconds --- 读超长短信时,最长的延时时间,默认30秒。 ReadSmsSeconds --- 读普通短信时,最长的延时时间,默认5秒。 ReadLongSmsWay --- 读短信函数ReadSms的工作方式(针对超长短信),有0、1、2数值可选择: 0 一般用于收到短信事件OnSms中;在读超长短信时,只有当id为最后一条短信id,才完整地读超长短信; 1 常用的读短信方式;当遇到超长短信时,首先计算此超长短信第一条id,按顺序读,当不成功时,读所有短信; 2 只要是超长短信,首先把SIM卡内的所有短信都读出来,拼接成此条超长短信; 建议在OnSms事件中调用ReadSms时,ReadLongSmsWay设为0,其它时候设为1。 ReturnCompleteLongSms --- 默认False;如果设为True,ReadSms读短信,当遇到超长短信时,只有当超长短信读完整,才返回短信内容,读超长短信异常,例如超长短信还没有完整接收时,就执行ReadSms,导致超长短信不能读完整,则ReadSms返回0。 ShowRxChar --- 默认False;如果设为True,显示手机盒与计算机通讯的内容,方便调试。 ShowTip --- 默认True,表示当执行ReadSMS、ReadAllSms、QueryAT等函数时,提示手机盒正在与计算机通讯。 ExecJDSmsEvent --- 默认True,表示收到短信时自动执行OnJDSms事件;当为False时,不触发OnJDSms,即不执行OnJDSms。 主要事件: OnAfterOpen ---- 打开连接端口时触发。 OnAfterClose ---- 关闭连接端口时触发。 OnRing --- 当有电话呼入时,手机响铃,触发此事件;有2个传递参数值: no为来电号码; devid是手机盒连接标识号,整数,其值为0,1,2... OnEndRing --- 对方挂断手机,响铃结束,触发此事件;有1个传递参数值: devid是手机盒标识号,其值为0,1,2... OnJDSms --- 手机盒接收到短信,并完整读取短信时,触发此事件;事件在ExecJDSmsEvent=True时有效;有5个传递参数值: id为短信标识号,可根据此id删除SIM卡内的短信; no为发送短信号码; t为接收短信时间; s为短信内容; devid是手机盒标识号。 OnSms --- 手机盒接收到短信时,触发此事件;有2个传递参数值: id为短信标识号,可根据id值读短信; devid是手机盒连接序号; 与OnJDSms事件的不同点: OnSms不读短信,只要接收到短信,就触发此事件; OnJDSms在接收到短信时,马上读取短信,并判断短信是完整的,才触发此事件; 推荐使用OnJDSms。 主要函数: SetupPort --- 设置手机盒与计算机连接的端口,可以自动查找端口,一般在第一次使用时调用;成功时保存连接参数,并返回True。 Open --- 打开连接,JDConnected设为True。 Close --- 关闭连接,JDConnected设为False。 InitSIM300 --- 对手机盒初始化,一般在第一次使用时调用,返回设置手机盒的参数。 LoadComportParam --- 在程序启动时调用,读取手机盒与计算机的连接参数;这些参数是在 SetupPort时保存的。 GetComportCount --- 返回手机盒与计算机的连接数量。 ReadSms --- 读短信函数,返回短信数量;有5个参数: id 短信标识号,函数按id读短信;当是超长短信时,id返回超长短信的第一条短信id; no 发送短信号码,返回值; t 短信接收时间,返回值; msg 短信内容,返回值; devid 手机盒标识号,表示从哪个手机盒读短信;当只有一个手机盒与计算机连接时,赋0。 ReadAllSms --- 读取所有短信函数,返回短信数量;有2个参数: memo 所有短信内容,返回值; devid 手机盒标识号,表示从哪个手机盒读短信。 SendSms --- 发送短信函数,返回成功发送短信的号码;有3个参数: nos 要发送的手机号码,可群发,号码之间用;或空格分隔; msg 要发送的短信内容; devid 手机盒标识号,表示用哪个手机盒发短信。 DeleteSms --- 删除短信的函数;有2个参数: id 短信标识号,函数按id删除短信; devid 手机盒标识号,表示删除哪个手机盒的短信。 QueryAT --- 向手机盒发送AT指令,返回手机盒响应内容,主要用于测试;有3个参数: cmd --- AT指令; mlines --- 返回内容是否有多行; devid 手机盒标识号,表示向哪个手机盒发AT指令。 SIM300Setup --- 设置手机盒音量等参数,成功返回True;有1个参数: devid 手机盒标识号,表示设置哪个手机盒的参数。 DoDial --- 拨号函数,有2个参数: no 拨出号码; devid 手机盒标识号,表示用哪个手机盒拨号。 DoAnswer --- 接听电话函数,摘机,有1个参数: devid 手机盒标识号,表示接听哪个手机盒电话。 DoHold --- 挂断电话函数,挂机,有1个参数: devid 手机盒标识号,表示挂断哪个手机盒电话。 getCNUM --- 返回本机号码,当为空时,表示未设置本机号码;有1个devid参数。 setThisPhoneNo --- 设置本机号码,成功时返回True;有2个参数: no 要设置的本机号码,当为空时,表示清除本机号码; devid 手机盒标识号。 ShowAboutBox --- 显示OCX控件版本。 开发要点: (1)在程序启动时,调用LoadComportParam函数。 (2)在第一次使用程序时,请调用SetupPort函数,设置与计算机连接的参数;成功设置后,请调用InitSIM300初始化手机盒模块。 (3)程序启动后,请调用Open函数打开连接;如果在程序设计时,JDConnected=True,则此步骤忽略。 (4)调用DoAnswer、DoHold、DoDial函数,实现拨打、接听电话。 (5)在OnRing、OnEndRing事件中编写处理代码,可实现来电显示。 (6)在OnJDSms中编写处理代码,可自动接收短信。 (7)调用SendSms函数,可发送短信。 (8)调用ReadSms、ReadAllSms、DeleteSms函数,可读取、删除SIM卡内的短信。

3,245

社区成员

发帖
与我相关
我的任务
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
  • ATL/ActiveX/COM社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧