作者Galu ( Before Sunset )
看板C_and_CPP
標題[問題] InvokeHelper的問題。
時間Wed Apr 22 13:07:53 2009
BOOL CJjk::Save(LPCTSTR filename,short savepics)
{
BOOL result;
static BYTE parms[] =
VTS_BSTR VTS_I2;
InvokeHelper(0x9, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
filename, savepics);
return result;
}
這段,我傳入 m_jjk.Save(filename,spics); 一直出現無效的參數數目,
↖CString ↖short
其中 spics = 30
請問有人知道究竟哪邊出問題嗎?
原本
BOOL CJjk::Save(LPCTSTR filename)
{
BOOL result;
static BYTE parms[] =
VTS_BSTR;
InvokeHelper(0x9, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
filename);
return result;
}
傳入 m_jjk.Save(filename); 是可正常運行的,
但是改過之後就傳不進去。
請高手幫忙,感恩~
--
壞情緒就跟鬧肚子一樣,不是你能控制的東西,
感覺來了,你可以忍住,但是卻不能停止。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.135.251.252
※ 編輯: Galu 來自: 220.135.251.252 (04/22 13:16)
1F:推 layan:make sure id(9) function have two parameters. 04/22 13:20
2F:→ Galu:所以我這段是沒問題的囉?所以我要改從ocx中debug? 04/22 13:27
3F:→ layan:你要確定ID9的func是吃二個參數的, 不然一定會失敗. 04/22 13:36
4F:→ layan:可以用 oleview 這個 tool 去看一下介面, 檢查是不是2個參數 04/22 13:37
5F:→ Galu:成功了,ocx的DISP_FUNCTION那邊沒改到,十分感謝您~ 04/22 13:38
6F:→ Galu:沒有你的提醒,我不知道要debug到民國幾年啊~XD 04/22 13:38
7F:→ layan:100 年快到了 XDXD 04/22 13:50
8F:→ Galu:這個debug到民國100年也很慘啊...XDDDDDDD 04/22 13:52
9F:推 VictorTom:民國99年12月31號再開始debug感覺就還好了....XD 04/22 13:53
10F:→ Galu:99年跨100年的時候,日期有用民國的軟體不知道有多少會掛? 04/22 14:06