[分享]未公开的SysCmd功能
时 间:2009-10-10 00:00:00
作 者:andymark ID:1350 城市:深圳
摘 要:未公开的SysCmd功能
正 文:
未公开的SysCmd功能
(本文原作者: Wayne Phillips 翻译整理 : andymark )
这里只选择部分未公开的的SysCmd 功能:
1.把MDB转换成MDE文件
用法: SysCmd 603, strPathInputMdb, strPathOutputMde
Vb调用的方法:
Dim objAccess
Set objAccess = CreateObject("Access.Application")
objAccess.SysCmd 603, strPathInputMdb, strPathOutputMde
Set objAccess= Nothing
备注: 转换MDE前请确保你的MDB已转换到当前版本
2. 返回当前ACCESS.EXE 实例的PID (仅限Access 2000以上版本)
用法: SysCmd(609)
3. 编译VBA模块
用法: SysCmd(504, Flag)
说明: Flag =16483 ---编译VBA模块并保存
Flag =16484 ---编译VBA模块但不保存
4.压缩数据库 (仅限Access 97)
用法:SysCmd(602, strPathSourceMdb, [strPathDestinationMdb])
5.创建 MSysIMEXSpecs 和 MSysIMEXColumns 表
用法: SysCmd(555)
MSysIMEXSpecs 和 MSysIMEXColumns 是用来保存导入/导出设置的相关信息,并不是ACCESS默认的系统表
运行SysCmd(555) 会自动创建 MSysIMEXSpecs 和 MSysIMEXColumns 表
6.VBA引用数量 (仅限Access 97)
用法: SysCmd(500)
功能等同于: Access.References.Count
7.转为Access 97 文件格式 (仅限Access 2000以上版本)
用法: SysCmd(605, strPathOutput)
功能等同于: Access.ConvertAccessProject strSourcePath, strDestinationPath, acFileFormatAccess97
8.转换为ADP 项目 (没有表/查询) (仅限Access 2000以上版本)
用法: SysCmd(607,strProjectPath)
从当前的数库中生成一个新的ADP 项目,并导入窗体,报表,VBA模块,宏等对象
此功能跟升迁向导不一样,它不处理表和查询的升迁.
9.查看Office助理提示内容 (仅限Access 2000以上版本)
用法: SysCmd(608, intTipID)
intTipID 取值范围 (0-60)
Debug.Print SysCmd(608, 6) 返回:" 当编写宏时,可以用 RunCommand 操作执行菜单命令。"
10.设置应用实例的键盘布局
用法: SysCmd(710, InputLocaleID)
InputLocaleID = &H08090809: British
InputLocaleID = &H04090409: US English
InputLocaleID = &04150415: Polish
InputLocaleID = &04190419: Russian
InputLocaleID = &H04080408: Greek
功能与API ActivateKeyboardLayout 一样,操作更为方便
11.获得指定线程的活动键盘布局
用法: SysCmd(711)
返回当前应用程序的InputLocaleID
12.判断当前ACCESS对象是否有在设计视图模式
用法: SysCmd(714)
返回一个布尔值(true/false) True: 如果 窗体,报表,宏,模块 目前在设计模式打开 返回True
13.ACCESS 编译版本
SysCmd(acSysCmdAccessVer) = 9 -> Access 2000
SysCmd(715) = 2719 ' Access 2000 No Service Pack
SysCmd(715) = 3822 ' Access 2000 SP1
SysCmd(715) = 4506 ' Access 2000 SP2
SysCmd(715) = 6620 ' Access 2000 SP3
SysCmd(acSysCmdAccessVer) = 10 -> Access 2002
SysCmd(715) = 2627 ' Access 2002(XP) No Service Pack
SysCmd(715) = 3409 ' Access 2002(XP) SP1
SysCmd(715) = 4302 ' Access 2002(XP) SP2
SysCmd(715) = 6501 ' Access 2002(XP) SP3
SysCmd(acSysCmdAccessVer) = 11 -> Access 2003
SysCmd(715) = 5614 ' Access 2003 No Service Pack
SysCmd(715) = 6355 ' Access 2003 SP1
SysCmd(715) = 6566 ' Access 2003 SP2
Access软件网QQ交流群 (群号:54525238) Access源码网店
常见问答:
技术分类:
源码示例
- 【源码QQ群号19834647...(12.17)
- Access对子窗体数据进行批...(10.30)
- 最精简的组合框行来源数据快速输...(10.25)
- Access仿平台的多值选择器...(10.24)
- 【Access日期区间段查询】...(10.22)
- 【Access源码示例】VBA...(10.12)
- Access累乘示例,Acce...(10.09)
- 数值8.88,把整数8去掉,转...(10.08)
- 【Access自定义函数】一个...(09.30)
- 【Access选项卡示例】Ac...(09.09)
学习心得
最新文章
- Access系统自带的日期选择器不...(11.08)
- 分享一下Access工程中的acw...(11.07)
- Access快速开发平台--让有权...(11.04)
- Access快速开发平台--审批选...(11.01)
- ACCESS两张表先各自排序,然后...(10.31)
- Access对子窗体数据进行批量+...(10.30)
- SqlServer中如何用SQL命...(10.29)
- Access报表中的分组功能用代码...(10.28)
- 用Access计算库存结余的一个方...(10.26)
- 最精简的组合框行来源数据快速输入(...(10.25)