Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

求高手改写四句代码(总共四句)成VBA,实现与其它软件的联动

自由心  发表于:2016-07-31 15:53:53  
复制

说明:下面这个函数主要是解决ACCESS与通达信股票软件的行情联动问题,是一个朋友他所写程序中的一个模块

即:当我双击ACCESS控件里的股票代码,就能同步在行情软件上显示相应的行情信息,从而增强了软件的操作体验。

********************模块begin*****************
void PostStock(CString strCode) 

//上海,深圳板块判断;
if (strCode.Left(2)=="60"){ strCode="7"+strCode; }else{ strCode="6"+strCode; }
static UINT UWM_STOCK = ::RegisterWindowMessage("Stock");  //获得TDX在系统注册过的消息;
int iCode= _ttoi(strCode);
::PostMessage((HWND)HWND_BROADCAST,UWM_STOCK,(WPARAM)iCode,0); //向系统广播消息;

}

********************模块END*****************


如果在ACCESS要实现此联动功能,应该怎么改写呢? 求高手相助

 

Top
自由心 发表于:2016-07-31 15:54:48

补充说明:

不需要获取通达信句柄,HWND_BROADCAST此参数直接向系统广播带有标志的消息,通达信如果打开并正常运行着,自然会接收到消息是它的并进行处理



自由心 发表于:2016-07-31 15:57:05

补充说明2:

代码是VC版的,作者提醒: VB也可以实现的,只需要声明一下其中的几个关键的API函数就可以了,其它代码换成VB的写法既可。
例如:
Private Declare Function RegisterWindowMessage Lib "user32" Alias "RegisterWindowMessageA" (ByVal lpString As String) As Long
Private Declare Function PostMessage Lib "user32" Alias "PostMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long



自由心 发表于:2016-08-01 16:42:44

懂的高手,请指导一下

那怕是提示下都好



自由心 发表于:2016-09-06 19:44:35

补充求助:点击表中代码简称能与通达信联动

点击下载此附件




自由心 发表于:2016-11-29 08:49:54
我想结贴,谁回复一下,给分

总记录:5篇  页次:1/1 9 1 :