Author Topic: COM OLE  (Read 928 times)

0 Members and 1 Guest are viewing this topic.

John

  • Hero Member
  • *****
  • Posts: 3966
Re: COM OLE
« Reply #60 on: March 23, 2021, 05:42:32 pm »
Sleep well!

Here is the debug trace of the ScriptBasic Excel example.

It looks like SB allows returning iDispatch pointers with :GET amd :CALL.

Code: Text
  1. C:\ScriptBASIC\examples>sbc excel.sb
  2. File already exists deleting: C:\ScriptBASIC\examples\warehouse.xls
  3.  
  4. CreateObject 2 args
  5. CreateObject(:SET, {00024500-0000-0000-C000-000000000046})
  6. {00024500-0000-0000-C000-000000000046} seems to return d!Jw☺valid IDISPATCH pointer
  7.  
  8. CallByName 3 args
  9. CallByName(obj=941164, method='Workbooks', calltype=2 , comArgs=0)
  10. VT_DISPATCH returned : return value from COM function was integer: 940c9c
  11.  
  12. CallByName 2 args
  13. CallByName(obj=940c9c, method='Add', calltype=1 , comArgs=0)
  14. VT_DISPATCH returned : return value from COM function was integer: 940b34
  15.  
  16. CallByName 4 args
  17. CallByName(obj=940b34, method='Worksheets', calltype=2 , comArgs=1)
  18. VTYPE_LONG: 1 (iter=0)
  19. VT_DISPATCH returned : return value from COM function was integer: 940d2c
  20.  
  21. CallByName 4 args
  22. CallByName(obj=940d2c, method='Range', calltype=2 , comArgs=1)
  23. VTYPE_STRING: G3 (iter=0)
  24. VT_DISPATCH returned : return value from COM function was integer: 940ffc
  25.  
  26. CallByName 4 args
  27. CallByName(obj=940ffc, method='Value', calltype=4 , comArgs=1)
  28. VTYPE_STRING: 123 (iter=0)
  29.  
  30. CallByName 4 args
  31. CallByName(obj=940d2c, method='Range', calltype=2 , comArgs=1)
  32. VTYPE_STRING: B1:B5 (iter=0)
  33. VT_DISPATCH returned : return value from COM function was integer: 9408f4
  34.  
  35. CallByName 6 args
  36. CallByName(obj=9408f4, method='BorderAround', calltype=1 , comArgs=3)
  37. VTYPE_LONG: 3 (iter=0)
  38. VTYPE_LONG: -4138 (iter=1)
  39. VTYPE_LONG: 1 (iter=2)
  40. VT_BOOL to VT_UI8 returned : return value from COM function was integer: 65535
  41.  
  42. CallByName 3 args
  43. CallByName(obj=9408f4, method='Interior', calltype=2 , comArgs=0)
  44. VT_DISPATCH returned : return value from COM function was integer: 940e4c
  45.  
  46. CallByName 4 args
  47. CallByName(obj=940e4c, method='ColorIndex', calltype=4 , comArgs=1)
  48. VTYPE_STRING: 38 (iter=0)
  49.  
  50. CallByName 4 args
  51. CallByName(obj=940e4c, method='Pattern', calltype=4 , comArgs=1)
  52. VTYPE_STRING: xlSolid (iter=0)
  53. Invoke failed!
  54.  
  55. CallByName 5 args
  56. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  57. VTYPE_LONG/BYREF: INTEGER BUFFER 0 (iter=0)
  58. VTYPE_LONG/BYREF: INTEGER BUFFER 0 (iter=1)
  59. !!! HAS BUFFERS !!!
  60. Invoke failed!
  61.  
  62. CallByName 4 args
  63. CallByName(NULL) called!
  64. ReleaseObject(NULL) called!
  65.  
  66. CallByName 5 args
  67. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  68. FROM BYREF => VTYPE_LONG: 1 (iter=0)
  69. VTYPE_LONG/BYREF: INTEGER BUFFER 0 (iter=1)
  70. !!! HAS BUFFERS !!!
  71. Invoke failed!
  72.  
  73. CallByName 4 args
  74. CallByName(NULL) called!
  75. ReleaseObject(NULL) called!
  76.  
  77. CallByName 5 args
  78. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  79. FROM BYREF => VTYPE_LONG: 2 (iter=0)
  80. VTYPE_LONG/BYREF: INTEGER BUFFER 0 (iter=1)
  81. !!! HAS BUFFERS !!!
  82. Invoke failed!
  83.  
  84. CallByName 4 args
  85. CallByName(NULL) called!
  86. ReleaseObject(NULL) called!
  87.  
  88. CallByName 5 args
  89. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  90. FROM BYREF => VTYPE_LONG: 3 (iter=0)
  91. VTYPE_LONG/BYREF: INTEGER BUFFER 0 (iter=1)
  92. !!! HAS BUFFERS !!!
  93. Invoke failed!
  94.  
  95. CallByName 4 args
  96. CallByName(NULL) called!
  97. ReleaseObject(NULL) called!
  98.  
  99. CallByName 5 args
  100. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  101. FROM BYREF => VTYPE_LONG: 4 (iter=0)
  102. VTYPE_LONG/BYREF: INTEGER BUFFER 0 (iter=1)
  103. !!! HAS BUFFERS !!!
  104. Invoke failed!
  105.  
  106. CallByName 4 args
  107. CallByName(NULL) called!
  108. ReleaseObject(NULL) called!
  109.  
  110. CallByName 5 args
  111. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  112. FROM BYREF => VTYPE_LONG: 5 (iter=0)
  113. VTYPE_LONG/BYREF: INTEGER BUFFER 0 (iter=1)
  114. !!! HAS BUFFERS !!!
  115. Invoke failed!
  116.  
  117. CallByName 4 args
  118. CallByName(NULL) called!
  119. ReleaseObject(NULL) called!
  120.  
  121. CallByName 5 args
  122. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  123. FROM BYREF => VTYPE_LONG: 6 (iter=0)
  124. VTYPE_LONG/BYREF: INTEGER BUFFER 0 (iter=1)
  125. !!! HAS BUFFERS !!!
  126. Invoke failed!
  127.  
  128. CallByName 4 args
  129. CallByName(NULL) called!
  130. ReleaseObject(NULL) called!
  131.  
  132. CallByName 5 args
  133. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  134. FROM BYREF => VTYPE_LONG: 7 (iter=0)
  135. VTYPE_LONG/BYREF: INTEGER BUFFER 0 (iter=1)
  136. !!! HAS BUFFERS !!!
  137. Invoke failed!
  138.  
  139. CallByName 4 args
  140. CallByName(NULL) called!
  141. ReleaseObject(NULL) called!
  142.  
  143. CallByName 5 args
  144. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  145. FROM BYREF => VTYPE_LONG: 8 (iter=0)
  146. VTYPE_LONG/BYREF: INTEGER BUFFER 0 (iter=1)
  147. !!! HAS BUFFERS !!!
  148. Invoke failed!
  149.  
  150. CallByName 4 args
  151. CallByName(NULL) called!
  152. ReleaseObject(NULL) called!
  153.  
  154. CallByName 5 args
  155. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  156. FROM BYREF => VTYPE_LONG: 9 (iter=0)
  157. VTYPE_LONG/BYREF: INTEGER BUFFER 0 (iter=1)
  158. !!! HAS BUFFERS !!!
  159. Invoke failed!
  160.  
  161. CallByName 4 args
  162. CallByName(NULL) called!
  163. ReleaseObject(NULL) called!
  164.  
  165. CallByName 5 args
  166. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  167. FROM BYREF => VTYPE_LONG: 10 (iter=0)
  168. VTYPE_LONG/BYREF: INTEGER BUFFER 0 (iter=1)
  169. !!! HAS BUFFERS !!!
  170. Invoke failed!
  171.  
  172. CallByName 4 args
  173. CallByName(NULL) called!
  174. ReleaseObject(NULL) called!
  175.  
  176. CallByName 5 args
  177. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  178. VTYPE_LONG/BYREF: INTEGER BUFFER 0 (iter=0)
  179. FROM BYREF => VTYPE_LONG: 1 (iter=1)
  180. !!! HAS BUFFERS !!!
  181. Invoke failed!
  182.  
  183. CallByName 4 args
  184. CallByName(NULL) called!
  185. ReleaseObject(NULL) called!
  186.  
  187. CallByName 5 args
  188. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  189. FROM BYREF => VTYPE_LONG: 1 (iter=0)
  190. FROM BYREF => VTYPE_LONG: 1 (iter=1)
  191. VT_DISPATCH returned : return value from COM function was integer: 94093c
  192.  
  193. CallByName 4 args
  194. CallByName(obj=94093c, method='Value', calltype=4 , comArgs=1)
  195. VTYPE_STRING: test-1-1 (iter=0)
  196.  
  197. CallByName 5 args
  198. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  199. FROM BYREF => VTYPE_LONG: 2 (iter=0)
  200. FROM BYREF => VTYPE_LONG: 1 (iter=1)
  201. VT_DISPATCH returned : return value from COM function was integer: 940e94
  202.  
  203. CallByName 4 args
  204. CallByName(obj=940e94, method='Value', calltype=4 , comArgs=1)
  205. VTYPE_STRING: test-1-2 (iter=0)
  206.  
  207. CallByName 5 args
  208. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  209. FROM BYREF => VTYPE_LONG: 3 (iter=0)
  210. FROM BYREF => VTYPE_LONG: 1 (iter=1)
  211. VT_DISPATCH returned : return value from COM function was integer: 940e4c
  212.  
  213. CallByName 4 args
  214. CallByName(obj=940e4c, method='Value', calltype=4 , comArgs=1)
  215. VTYPE_STRING: test-1-3 (iter=0)
  216.  
  217. CallByName 5 args
  218. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  219. FROM BYREF => VTYPE_LONG: 4 (iter=0)
  220. FROM BYREF => VTYPE_LONG: 1 (iter=1)
  221. VT_DISPATCH returned : return value from COM function was integer: 9408f4
  222.  
  223. CallByName 4 args
  224. CallByName(obj=9408f4, method='Value', calltype=4 , comArgs=1)
  225. VTYPE_STRING: test-1-4 (iter=0)
  226.  
  227. CallByName 5 args
  228. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  229. FROM BYREF => VTYPE_LONG: 5 (iter=0)
  230. FROM BYREF => VTYPE_LONG: 1 (iter=1)
  231. VT_DISPATCH returned : return value from COM function was integer: 940e4c
  232.  
  233. CallByName 4 args
  234. CallByName(obj=940e4c, method='Value', calltype=4 , comArgs=1)
  235. VTYPE_STRING: test-1-5 (iter=0)
  236.  
  237. CallByName 5 args
  238. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  239. FROM BYREF => VTYPE_LONG: 6 (iter=0)
  240. FROM BYREF => VTYPE_LONG: 1 (iter=1)
  241. VT_DISPATCH returned : return value from COM function was integer: 940e94
  242.  
  243. CallByName 4 args
  244. CallByName(obj=940e94, method='Value', calltype=4 , comArgs=1)
  245. VTYPE_STRING: test-1-6 (iter=0)
  246.  
  247. CallByName 5 args
  248. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  249. FROM BYREF => VTYPE_LONG: 7 (iter=0)
  250. FROM BYREF => VTYPE_LONG: 1 (iter=1)
  251. VT_DISPATCH returned : return value from COM function was integer: 940e4c
  252.  
  253. CallByName 4 args
  254. CallByName(obj=940e4c, method='Value', calltype=4 , comArgs=1)
  255. VTYPE_STRING: test-1-7 (iter=0)
  256.  
  257. CallByName 5 args
  258. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  259. FROM BYREF => VTYPE_LONG: 8 (iter=0)
  260. FROM BYREF => VTYPE_LONG: 1 (iter=1)
  261. VT_DISPATCH returned : return value from COM function was integer: 9408f4
  262.  
  263. CallByName 4 args
  264. CallByName(obj=9408f4, method='Value', calltype=4 , comArgs=1)
  265. VTYPE_STRING: test-1-8 (iter=0)
  266.  
  267. CallByName 5 args
  268. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  269. FROM BYREF => VTYPE_LONG: 9 (iter=0)
  270. FROM BYREF => VTYPE_LONG: 1 (iter=1)
  271. VT_DISPATCH returned : return value from COM function was integer: 940e94
  272.  
  273. CallByName 4 args
  274. CallByName(obj=940e94, method='Value', calltype=4 , comArgs=1)
  275. VTYPE_STRING: test-1-9 (iter=0)
  276.  
  277. CallByName 5 args
  278. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  279. FROM BYREF => VTYPE_LONG: 10 (iter=0)
  280. FROM BYREF => VTYPE_LONG: 1 (iter=1)
  281. VT_DISPATCH returned : return value from COM function was integer: 9408f4
  282.  
  283. CallByName 4 args
  284. CallByName(obj=9408f4, method='Value', calltype=4 , comArgs=1)
  285. VTYPE_STRING: test-1-10 (iter=0)
  286.  
  287. CallByName 5 args
  288. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  289. VTYPE_LONG/BYREF: INTEGER BUFFER 0 (iter=0)
  290. FROM BYREF => VTYPE_LONG: 2 (iter=1)
  291. !!! HAS BUFFERS !!!
  292. Invoke failed!
  293.  
  294. CallByName 4 args
  295. CallByName(NULL) called!
  296. ReleaseObject(NULL) called!
  297.  
  298. CallByName 5 args
  299. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  300. FROM BYREF => VTYPE_LONG: 1 (iter=0)
  301. FROM BYREF => VTYPE_LONG: 2 (iter=1)
  302. VT_DISPATCH returned : return value from COM function was integer: 94093c
  303.  
  304. CallByName 4 args
  305. CallByName(obj=94093c, method='Value', calltype=4 , comArgs=1)
  306. VTYPE_STRING: test-2-1 (iter=0)
  307.  
  308. CallByName 5 args
  309. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  310. FROM BYREF => VTYPE_LONG: 2 (iter=0)
  311. FROM BYREF => VTYPE_LONG: 2 (iter=1)
  312. VT_DISPATCH returned : return value from COM function was integer: 940fb4
  313.  
  314. CallByName 4 args
  315. CallByName(obj=940fb4, method='Value', calltype=4 , comArgs=1)
  316. VTYPE_STRING: test-2-2 (iter=0)
  317.  
  318. CallByName 5 args
  319. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  320. FROM BYREF => VTYPE_LONG: 3 (iter=0)
  321. FROM BYREF => VTYPE_LONG: 2 (iter=1)
  322. VT_DISPATCH returned : return value from COM function was integer: 941044
  323.  
  324. CallByName 4 args
  325. CallByName(obj=941044, method='Value', calltype=4 , comArgs=1)
  326. VTYPE_STRING: test-2-3 (iter=0)
  327.  
  328. CallByName 5 args
  329. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  330. FROM BYREF => VTYPE_LONG: 4 (iter=0)
  331. FROM BYREF => VTYPE_LONG: 2 (iter=1)
  332. VT_DISPATCH returned : return value from COM function was integer: 94093c
  333.  
  334. CallByName 4 args
  335. CallByName(obj=94093c, method='Value', calltype=4 , comArgs=1)
  336. VTYPE_STRING: test-2-4 (iter=0)
  337.  
  338. CallByName 5 args
  339. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  340. FROM BYREF => VTYPE_LONG: 5 (iter=0)
  341. FROM BYREF => VTYPE_LONG: 2 (iter=1)
  342. VT_DISPATCH returned : return value from COM function was integer: 9408f4
  343.  
  344. CallByName 4 args
  345. CallByName(obj=9408f4, method='Value', calltype=4 , comArgs=1)
  346. VTYPE_STRING: test-2-5 (iter=0)
  347.  
  348. CallByName 5 args
  349. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  350. FROM BYREF => VTYPE_LONG: 6 (iter=0)
  351. FROM BYREF => VTYPE_LONG: 2 (iter=1)
  352. VT_DISPATCH returned : return value from COM function was integer: 9408f4
  353.  
  354. CallByName 4 args
  355. CallByName(obj=9408f4, method='Value', calltype=4 , comArgs=1)
  356. VTYPE_STRING: test-2-6 (iter=0)
  357.  
  358. CallByName 5 args
  359. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  360. FROM BYREF => VTYPE_LONG: 7 (iter=0)
  361. FROM BYREF => VTYPE_LONG: 2 (iter=1)
  362. VT_DISPATCH returned : return value from COM function was integer: 940f6c
  363.  
  364. CallByName 4 args
  365. CallByName(obj=940f6c, method='Value', calltype=4 , comArgs=1)
  366. VTYPE_STRING: test-2-7 (iter=0)
  367.  
  368. CallByName 5 args
  369. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  370. FROM BYREF => VTYPE_LONG: 8 (iter=0)
  371. FROM BYREF => VTYPE_LONG: 2 (iter=1)
  372. VT_DISPATCH returned : return value from COM function was integer: 940e94
  373.  
  374. CallByName 4 args
  375. CallByName(obj=940e94, method='Value', calltype=4 , comArgs=1)
  376. VTYPE_STRING: test-2-8 (iter=0)
  377.  
  378. CallByName 5 args
  379. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  380. FROM BYREF => VTYPE_LONG: 9 (iter=0)
  381. FROM BYREF => VTYPE_LONG: 2 (iter=1)
  382. VT_DISPATCH returned : return value from COM function was integer: 940e94
  383.  
  384. CallByName 4 args
  385. CallByName(obj=940e94, method='Value', calltype=4 , comArgs=1)
  386. VTYPE_STRING: test-2-9 (iter=0)
  387.  
  388. CallByName 5 args
  389. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  390. FROM BYREF => VTYPE_LONG: 10 (iter=0)
  391. FROM BYREF => VTYPE_LONG: 2 (iter=1)
  392. VT_DISPATCH returned : return value from COM function was integer: 941044
  393.  
  394. CallByName 4 args
  395. CallByName(obj=941044, method='Value', calltype=4 , comArgs=1)
  396. VTYPE_STRING: test-2-10 (iter=0)
  397.  
  398. CallByName 5 args
  399. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  400. VTYPE_LONG/BYREF: INTEGER BUFFER 0 (iter=0)
  401. FROM BYREF => VTYPE_LONG: 3 (iter=1)
  402. !!! HAS BUFFERS !!!
  403. Invoke failed!
  404.  
  405. CallByName 4 args
  406. CallByName(NULL) called!
  407. ReleaseObject(NULL) called!
  408.  
  409. CallByName 5 args
  410. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  411. FROM BYREF => VTYPE_LONG: 1 (iter=0)
  412. FROM BYREF => VTYPE_LONG: 3 (iter=1)
  413. VT_DISPATCH returned : return value from COM function was integer: 940e4c
  414.  
  415. CallByName 4 args
  416. CallByName(obj=940e4c, method='Value', calltype=4 , comArgs=1)
  417. VTYPE_STRING: test-3-1 (iter=0)
  418.  
  419. CallByName 5 args
  420. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  421. FROM BYREF => VTYPE_LONG: 2 (iter=0)
  422. FROM BYREF => VTYPE_LONG: 3 (iter=1)
  423. VT_DISPATCH returned : return value from COM function was integer: 940e4c
  424.  
  425. CallByName 4 args
  426. CallByName(obj=940e4c, method='Value', calltype=4 , comArgs=1)
  427. VTYPE_STRING: test-3-2 (iter=0)
  428.  
  429. CallByName 5 args
  430. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  431. FROM BYREF => VTYPE_LONG: 3 (iter=0)
  432. FROM BYREF => VTYPE_LONG: 3 (iter=1)
  433. VT_DISPATCH returned : return value from COM function was integer: 940e94
  434.  
  435. CallByName 4 args
  436. CallByName(obj=940e94, method='Value', calltype=4 , comArgs=1)
  437. VTYPE_STRING: test-3-3 (iter=0)
  438.  
  439. CallByName 5 args
  440. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  441. FROM BYREF => VTYPE_LONG: 4 (iter=0)
  442. FROM BYREF => VTYPE_LONG: 3 (iter=1)
  443. VT_DISPATCH returned : return value from COM function was integer: 940e4c
  444.  
  445. CallByName 4 args
  446. CallByName(obj=940e4c, method='Value', calltype=4 , comArgs=1)
  447. VTYPE_STRING: test-3-4 (iter=0)
  448.  
  449. CallByName 5 args
  450. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  451. FROM BYREF => VTYPE_LONG: 5 (iter=0)
  452. FROM BYREF => VTYPE_LONG: 3 (iter=1)
  453. VT_DISPATCH returned : return value from COM function was integer: 940f24
  454.  
  455. CallByName 4 args
  456. CallByName(obj=940f24, method='Value', calltype=4 , comArgs=1)
  457. VTYPE_STRING: test-3-5 (iter=0)
  458.  
  459. CallByName 5 args
  460. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  461. FROM BYREF => VTYPE_LONG: 6 (iter=0)
  462. FROM BYREF => VTYPE_LONG: 3 (iter=1)
  463. VT_DISPATCH returned : return value from COM function was integer: 940e4c
  464.  
  465. CallByName 4 args
  466. CallByName(obj=940e4c, method='Value', calltype=4 , comArgs=1)
  467. VTYPE_STRING: test-3-6 (iter=0)
  468.  
  469. CallByName 5 args
  470. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  471. FROM BYREF => VTYPE_LONG: 7 (iter=0)
  472. FROM BYREF => VTYPE_LONG: 3 (iter=1)
  473. VT_DISPATCH returned : return value from COM function was integer: 941044
  474.  
  475. CallByName 4 args
  476. CallByName(obj=941044, method='Value', calltype=4 , comArgs=1)
  477. VTYPE_STRING: test-3-7 (iter=0)
  478.  
  479. CallByName 5 args
  480. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  481. FROM BYREF => VTYPE_LONG: 8 (iter=0)
  482. FROM BYREF => VTYPE_LONG: 3 (iter=1)
  483. VT_DISPATCH returned : return value from COM function was integer: 9409cc
  484.  
  485. CallByName 4 args
  486. CallByName(obj=9409cc, method='Value', calltype=4 , comArgs=1)
  487. VTYPE_STRING: test-3-8 (iter=0)
  488.  
  489. CallByName 5 args
  490. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  491. FROM BYREF => VTYPE_LONG: 9 (iter=0)
  492. FROM BYREF => VTYPE_LONG: 3 (iter=1)
  493. VT_DISPATCH returned : return value from COM function was integer: 940e4c
  494.  
  495. CallByName 4 args
  496. CallByName(obj=940e4c, method='Value', calltype=4 , comArgs=1)
  497. VTYPE_STRING: test-3-9 (iter=0)
  498.  
  499. CallByName 5 args
  500. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  501. FROM BYREF => VTYPE_LONG: 10 (iter=0)
  502. FROM BYREF => VTYPE_LONG: 3 (iter=1)
  503. VT_DISPATCH returned : return value from COM function was integer: 940e4c
  504.  
  505. CallByName 4 args
  506. CallByName(obj=940e4c, method='Value', calltype=4 , comArgs=1)
  507. VTYPE_STRING: test-3-10 (iter=0)
  508.  
  509. CallByName 5 args
  510. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  511. VTYPE_LONG/BYREF: INTEGER BUFFER 0 (iter=0)
  512. FROM BYREF => VTYPE_LONG: 4 (iter=1)
  513. !!! HAS BUFFERS !!!
  514. Invoke failed!
  515.  
  516. CallByName 4 args
  517. CallByName(NULL) called!
  518. ReleaseObject(NULL) called!
  519.  
  520. CallByName 5 args
  521. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  522. FROM BYREF => VTYPE_LONG: 1 (iter=0)
  523. FROM BYREF => VTYPE_LONG: 4 (iter=1)
  524. VT_DISPATCH returned : return value from COM function was integer: 940e94
  525.  
  526. CallByName 4 args
  527. CallByName(obj=940e94, method='Value', calltype=4 , comArgs=1)
  528. VTYPE_STRING: test-4-1 (iter=0)
  529.  
  530. CallByName 5 args
  531. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  532. FROM BYREF => VTYPE_LONG: 2 (iter=0)
  533. FROM BYREF => VTYPE_LONG: 4 (iter=1)
  534. VT_DISPATCH returned : return value from COM function was integer: 940e94
  535.  
  536. CallByName 4 args
  537. CallByName(obj=940e94, method='Value', calltype=4 , comArgs=1)
  538. VTYPE_STRING: test-4-2 (iter=0)
  539.  
  540. CallByName 5 args
  541. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  542. FROM BYREF => VTYPE_LONG: 3 (iter=0)
  543. FROM BYREF => VTYPE_LONG: 4 (iter=1)
  544. VT_DISPATCH returned : return value from COM function was integer: 94093c
  545.  
  546. CallByName 4 args
  547. CallByName(obj=94093c, method='Value', calltype=4 , comArgs=1)
  548. VTYPE_STRING: test-4-3 (iter=0)
  549.  
  550. CallByName 5 args
  551. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  552. FROM BYREF => VTYPE_LONG: 4 (iter=0)
  553. FROM BYREF => VTYPE_LONG: 4 (iter=1)
  554. VT_DISPATCH returned : return value from COM function was integer: 940e94
  555.  
  556. CallByName 4 args
  557. CallByName(obj=940e94, method='Value', calltype=4 , comArgs=1)
  558. VTYPE_STRING: test-4-4 (iter=0)
  559.  
  560. CallByName 5 args
  561. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  562. FROM BYREF => VTYPE_LONG: 5 (iter=0)
  563. FROM BYREF => VTYPE_LONG: 4 (iter=1)
  564. VT_DISPATCH returned : return value from COM function was integer: 9409cc
  565.  
  566. CallByName 4 args
  567. CallByName(obj=9409cc, method='Value', calltype=4 , comArgs=1)
  568. VTYPE_STRING: test-4-5 (iter=0)
  569.  
  570. CallByName 5 args
  571. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  572. FROM BYREF => VTYPE_LONG: 6 (iter=0)
  573. FROM BYREF => VTYPE_LONG: 4 (iter=1)
  574. VT_DISPATCH returned : return value from COM function was integer: 940e94
  575.  
  576. CallByName 4 args
  577. CallByName(obj=940e94, method='Value', calltype=4 , comArgs=1)
  578. VTYPE_STRING: test-4-6 (iter=0)
  579.  
  580. CallByName 5 args
  581. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  582. FROM BYREF => VTYPE_LONG: 7 (iter=0)
  583. FROM BYREF => VTYPE_LONG: 4 (iter=1)
  584. VT_DISPATCH returned : return value from COM function was integer: 941044
  585.  
  586. CallByName 4 args
  587. CallByName(obj=941044, method='Value', calltype=4 , comArgs=1)
  588. VTYPE_STRING: test-4-7 (iter=0)
  589.  
  590. CallByName 5 args
  591. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  592. FROM BYREF => VTYPE_LONG: 8 (iter=0)
  593. FROM BYREF => VTYPE_LONG: 4 (iter=1)
  594. VT_DISPATCH returned : return value from COM function was integer: 9408f4
  595.  
  596. CallByName 4 args
  597. CallByName(obj=9408f4, method='Value', calltype=4 , comArgs=1)
  598. VTYPE_STRING: test-4-8 (iter=0)
  599.  
  600. CallByName 5 args
  601. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  602. FROM BYREF => VTYPE_LONG: 9 (iter=0)
  603. FROM BYREF => VTYPE_LONG: 4 (iter=1)
  604. VT_DISPATCH returned : return value from COM function was integer: 940e4c
  605.  
  606. CallByName 4 args
  607. CallByName(obj=940e4c, method='Value', calltype=4 , comArgs=1)
  608. VTYPE_STRING: test-4-9 (iter=0)
  609.  
  610. CallByName 5 args
  611. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  612. FROM BYREF => VTYPE_LONG: 10 (iter=0)
  613. FROM BYREF => VTYPE_LONG: 4 (iter=1)
  614. VT_DISPATCH returned : return value from COM function was integer: 940e4c
  615.  
  616. CallByName 4 args
  617. CallByName(obj=940e4c, method='Value', calltype=4 , comArgs=1)
  618. VTYPE_STRING: test-4-10 (iter=0)
  619.  
  620. CallByName 5 args
  621. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  622. VTYPE_LONG/BYREF: INTEGER BUFFER 0 (iter=0)
  623. FROM BYREF => VTYPE_LONG: 5 (iter=1)
  624. !!! HAS BUFFERS !!!
  625. Invoke failed!
  626.  
  627. CallByName 4 args
  628. CallByName(NULL) called!
  629. ReleaseObject(NULL) called!
  630.  
  631. CallByName 5 args
  632. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  633. FROM BYREF => VTYPE_LONG: 1 (iter=0)
  634. FROM BYREF => VTYPE_LONG: 5 (iter=1)
  635. VT_DISPATCH returned : return value from COM function was integer: 940edc
  636.  
  637. CallByName 4 args
  638. CallByName(obj=940edc, method='Value', calltype=4 , comArgs=1)
  639. VTYPE_STRING: test-5-1 (iter=0)
  640.  
  641. CallByName 5 args
  642. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  643. FROM BYREF => VTYPE_LONG: 2 (iter=0)
  644. FROM BYREF => VTYPE_LONG: 5 (iter=1)
  645. VT_DISPATCH returned : return value from COM function was integer: 940e4c
  646.  
  647. CallByName 4 args
  648. CallByName(obj=940e4c, method='Value', calltype=4 , comArgs=1)
  649. VTYPE_STRING: test-5-2 (iter=0)
  650.  
  651. CallByName 5 args
  652. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  653. FROM BYREF => VTYPE_LONG: 3 (iter=0)
  654. FROM BYREF => VTYPE_LONG: 5 (iter=1)
  655. VT_DISPATCH returned : return value from COM function was integer: 941044
  656.  
  657. CallByName 4 args
  658. CallByName(obj=941044, method='Value', calltype=4 , comArgs=1)
  659. VTYPE_STRING: test-5-3 (iter=0)
  660.  
  661. CallByName 5 args
  662. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  663. FROM BYREF => VTYPE_LONG: 4 (iter=0)
  664. FROM BYREF => VTYPE_LONG: 5 (iter=1)
  665. VT_DISPATCH returned : return value from COM function was integer: 940e94
  666.  
  667. CallByName 4 args
  668. CallByName(obj=940e94, method='Value', calltype=4 , comArgs=1)
  669. VTYPE_STRING: test-5-4 (iter=0)
  670.  
  671. CallByName 5 args
  672. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  673. FROM BYREF => VTYPE_LONG: 5 (iter=0)
  674. FROM BYREF => VTYPE_LONG: 5 (iter=1)
  675. VT_DISPATCH returned : return value from COM function was integer: 9408f4
  676.  
  677. CallByName 4 args
  678. CallByName(obj=9408f4, method='Value', calltype=4 , comArgs=1)
  679. VTYPE_STRING: test-5-5 (iter=0)
  680.  
  681. CallByName 5 args
  682. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  683. FROM BYREF => VTYPE_LONG: 6 (iter=0)
  684. FROM BYREF => VTYPE_LONG: 5 (iter=1)
  685. VT_DISPATCH returned : return value from COM function was integer: 940e94
  686.  
  687. CallByName 4 args
  688. CallByName(obj=940e94, method='Value', calltype=4 , comArgs=1)
  689. VTYPE_STRING: test-5-6 (iter=0)
  690.  
  691. CallByName 5 args
  692. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  693. FROM BYREF => VTYPE_LONG: 7 (iter=0)
  694. FROM BYREF => VTYPE_LONG: 5 (iter=1)
  695. VT_DISPATCH returned : return value from COM function was integer: 9408f4
  696.  
  697. CallByName 4 args
  698. CallByName(obj=9408f4, method='Value', calltype=4 , comArgs=1)
  699. VTYPE_STRING: test-5-7 (iter=0)
  700.  
  701. CallByName 5 args
  702. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  703. FROM BYREF => VTYPE_LONG: 8 (iter=0)
  704. FROM BYREF => VTYPE_LONG: 5 (iter=1)
  705. VT_DISPATCH returned : return value from COM function was integer: 940edc
  706.  
  707. CallByName 4 args
  708. CallByName(obj=940edc, method='Value', calltype=4 , comArgs=1)
  709. VTYPE_STRING: test-5-8 (iter=0)
  710.  
  711. CallByName 5 args
  712. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  713. FROM BYREF => VTYPE_LONG: 9 (iter=0)
  714. FROM BYREF => VTYPE_LONG: 5 (iter=1)
  715. VT_DISPATCH returned : return value from COM function was integer: 940e94
  716.  
  717. CallByName 4 args
  718. CallByName(obj=940e94, method='Value', calltype=4 , comArgs=1)
  719. VTYPE_STRING: test-5-9 (iter=0)
  720.  
  721. CallByName 5 args
  722. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  723. FROM BYREF => VTYPE_LONG: 10 (iter=0)
  724. FROM BYREF => VTYPE_LONG: 5 (iter=1)
  725. VT_DISPATCH returned : return value from COM function was integer: 94108c
  726.  
  727. CallByName 4 args
  728. CallByName(obj=94108c, method='Value', calltype=4 , comArgs=1)
  729. VTYPE_STRING: test-5-10 (iter=0)
  730.  
  731. CallByName 5 args
  732. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  733. VTYPE_LONG/BYREF: INTEGER BUFFER 0 (iter=0)
  734. FROM BYREF => VTYPE_LONG: 6 (iter=1)
  735. !!! HAS BUFFERS !!!
  736. Invoke failed!
  737.  
  738. CallByName 4 args
  739. CallByName(NULL) called!
  740. ReleaseObject(NULL) called!
  741.  
  742. CallByName 5 args
  743. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  744. FROM BYREF => VTYPE_LONG: 1 (iter=0)
  745. FROM BYREF => VTYPE_LONG: 6 (iter=1)
  746. VT_DISPATCH returned : return value from COM function was integer: 941044
  747.  
  748. CallByName 4 args
  749. CallByName(obj=941044, method='Value', calltype=4 , comArgs=1)
  750. VTYPE_STRING: test-6-1 (iter=0)
  751.  
  752. CallByName 5 args
  753. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  754. FROM BYREF => VTYPE_LONG: 2 (iter=0)
  755. FROM BYREF => VTYPE_LONG: 6 (iter=1)
  756. VT_DISPATCH returned : return value from COM function was integer: 94108c
  757.  
  758. CallByName 4 args
  759. CallByName(obj=94108c, method='Value', calltype=4 , comArgs=1)
  760. VTYPE_STRING: test-6-2 (iter=0)
  761.  
  762. CallByName 5 args
  763. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  764. FROM BYREF => VTYPE_LONG: 3 (iter=0)
  765. FROM BYREF => VTYPE_LONG: 6 (iter=1)
  766. VT_DISPATCH returned : return value from COM function was integer: 940e94
  767.  
  768. CallByName 4 args
  769. CallByName(obj=940e94, method='Value', calltype=4 , comArgs=1)
  770. VTYPE_STRING: test-6-3 (iter=0)
  771.  
  772. CallByName 5 args
  773. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  774. FROM BYREF => VTYPE_LONG: 4 (iter=0)
  775. FROM BYREF => VTYPE_LONG: 6 (iter=1)
  776. VT_DISPATCH returned : return value from COM function was integer: 940e4c
  777.  
  778. CallByName 4 args
  779. CallByName(obj=940e4c, method='Value', calltype=4 , comArgs=1)
  780. VTYPE_STRING: test-6-4 (iter=0)
  781.  
  782. CallByName 5 args
  783. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  784. FROM BYREF => VTYPE_LONG: 5 (iter=0)
  785. FROM BYREF => VTYPE_LONG: 6 (iter=1)
  786. VT_DISPATCH returned : return value from COM function was integer: 940e94
  787.  
  788. CallByName 4 args
  789. CallByName(obj=940e94, method='Value', calltype=4 , comArgs=1)
  790. VTYPE_STRING: test-6-5 (iter=0)
  791.  
  792. CallByName 5 args
  793. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  794. FROM BYREF => VTYPE_LONG: 6 (iter=0)
  795. FROM BYREF => VTYPE_LONG: 6 (iter=1)
  796. VT_DISPATCH returned : return value from COM function was integer: 9408f4
  797.  
  798. CallByName 4 args
  799. CallByName(obj=9408f4, method='Value', calltype=4 , comArgs=1)
  800. VTYPE_STRING: test-6-6 (iter=0)
  801.  
  802. CallByName 5 args
  803. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  804. FROM BYREF => VTYPE_LONG: 7 (iter=0)
  805. FROM BYREF => VTYPE_LONG: 6 (iter=1)
  806. VT_DISPATCH returned : return value from COM function was integer: 9408f4
  807.  
  808. CallByName 4 args
  809. CallByName(obj=9408f4, method='Value', calltype=4 , comArgs=1)
  810. VTYPE_STRING: test-6-7 (iter=0)
  811.  
  812. CallByName 5 args
  813. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  814. FROM BYREF => VTYPE_LONG: 8 (iter=0)
  815. FROM BYREF => VTYPE_LONG: 6 (iter=1)
  816. VT_DISPATCH returned : return value from COM function was integer: 940e94
  817.  
  818. CallByName 4 args
  819. CallByName(obj=940e94, method='Value', calltype=4 , comArgs=1)
  820. VTYPE_STRING: test-6-8 (iter=0)
  821.  
  822. CallByName 5 args
  823. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  824. FROM BYREF => VTYPE_LONG: 9 (iter=0)
  825. FROM BYREF => VTYPE_LONG: 6 (iter=1)
  826. VT_DISPATCH returned : return value from COM function was integer: 940ffc
  827.  
  828. CallByName 4 args
  829. CallByName(obj=940ffc, method='Value', calltype=4 , comArgs=1)
  830. VTYPE_STRING: test-6-9 (iter=0)
  831.  
  832. CallByName 5 args
  833. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  834. FROM BYREF => VTYPE_LONG: 10 (iter=0)
  835. FROM BYREF => VTYPE_LONG: 6 (iter=1)
  836. VT_DISPATCH returned : return value from COM function was integer: 9408f4
  837.  
  838. CallByName 4 args
  839. CallByName(obj=9408f4, method='Value', calltype=4 , comArgs=1)
  840. VTYPE_STRING: test-6-10 (iter=0)
  841.  
  842. CallByName 5 args
  843. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  844. VTYPE_LONG/BYREF: INTEGER BUFFER 0 (iter=0)
  845. FROM BYREF => VTYPE_LONG: 7 (iter=1)
  846. !!! HAS BUFFERS !!!
  847. Invoke failed!
  848.  
  849. CallByName 4 args
  850. CallByName(NULL) called!
  851. ReleaseObject(NULL) called!
  852.  
  853. CallByName 5 args
  854. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  855. FROM BYREF => VTYPE_LONG: 1 (iter=0)
  856. FROM BYREF => VTYPE_LONG: 7 (iter=1)
  857. VT_DISPATCH returned : return value from COM function was integer: 940e4c
  858.  
  859. CallByName 4 args
  860. CallByName(obj=940e4c, method='Value', calltype=4 , comArgs=1)
  861. VTYPE_STRING: test-7-1 (iter=0)
  862.  
  863. CallByName 5 args
  864. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  865. FROM BYREF => VTYPE_LONG: 2 (iter=0)
  866. FROM BYREF => VTYPE_LONG: 7 (iter=1)
  867. VT_DISPATCH returned : return value from COM function was integer: 94093c
  868.  
  869. CallByName 4 args
  870. CallByName(obj=94093c, method='Value', calltype=4 , comArgs=1)
  871. VTYPE_STRING: test-7-2 (iter=0)
  872.  
  873. CallByName 5 args
  874. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  875. FROM BYREF => VTYPE_LONG: 3 (iter=0)
  876. FROM BYREF => VTYPE_LONG: 7 (iter=1)
  877. VT_DISPATCH returned : return value from COM function was integer: 940fb4
  878.  
  879. CallByName 4 args
  880. CallByName(obj=940fb4, method='Value', calltype=4 , comArgs=1)
  881. VTYPE_STRING: test-7-3 (iter=0)
  882.  
  883. CallByName 5 args
  884. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  885. FROM BYREF => VTYPE_LONG: 4 (iter=0)
  886. FROM BYREF => VTYPE_LONG: 7 (iter=1)
  887. VT_DISPATCH returned : return value from COM function was integer: 940984
  888.  
  889. CallByName 4 args
  890. CallByName(obj=940984, method='Value', calltype=4 , comArgs=1)
  891. VTYPE_STRING: test-7-4 (iter=0)
  892.  
  893. CallByName 5 args
  894. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  895. FROM BYREF => VTYPE_LONG: 5 (iter=0)
  896. FROM BYREF => VTYPE_LONG: 7 (iter=1)
  897. VT_DISPATCH returned : return value from COM function was integer: 940e94
  898.  
  899. CallByName 4 args
  900. CallByName(obj=940e94, method='Value', calltype=4 , comArgs=1)
  901. VTYPE_STRING: test-7-5 (iter=0)
  902.  
  903. CallByName 5 args
  904. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  905. FROM BYREF => VTYPE_LONG: 6 (iter=0)
  906. FROM BYREF => VTYPE_LONG: 7 (iter=1)
  907. VT_DISPATCH returned : return value from COM function was integer: 9408f4
  908.  
  909. CallByName 4 args
  910. CallByName(obj=9408f4, method='Value', calltype=4 , comArgs=1)
  911. VTYPE_STRING: test-7-6 (iter=0)
  912.  
  913. CallByName 5 args
  914. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  915. FROM BYREF => VTYPE_LONG: 7 (iter=0)
  916. FROM BYREF => VTYPE_LONG: 7 (iter=1)
  917. VT_DISPATCH returned : return value from COM function was integer: 94108c
  918.  
  919. CallByName 4 args
  920. CallByName(obj=94108c, method='Value', calltype=4 , comArgs=1)
  921. VTYPE_STRING: test-7-7 (iter=0)
  922.  
  923. CallByName 5 args
  924. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  925. FROM BYREF => VTYPE_LONG: 8 (iter=0)
  926. FROM BYREF => VTYPE_LONG: 7 (iter=1)
  927. VT_DISPATCH returned : return value from COM function was integer: 940f24
  928.  
  929. CallByName 4 args
  930. CallByName(obj=940f24, method='Value', calltype=4 , comArgs=1)
  931. VTYPE_STRING: test-7-8 (iter=0)
  932.  
  933. CallByName 5 args
  934. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  935. FROM BYREF => VTYPE_LONG: 9 (iter=0)
  936. FROM BYREF => VTYPE_LONG: 7 (iter=1)
  937. VT_DISPATCH returned : return value from COM function was integer: 940e4c
  938.  
  939. CallByName 4 args
  940. CallByName(obj=940e4c, method='Value', calltype=4 , comArgs=1)
  941. VTYPE_STRING: test-7-9 (iter=0)
  942.  
  943. CallByName 5 args
  944. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  945. FROM BYREF => VTYPE_LONG: 10 (iter=0)
  946. FROM BYREF => VTYPE_LONG: 7 (iter=1)
  947. VT_DISPATCH returned : return value from COM function was integer: 940e4c
  948.  
  949. CallByName 4 args
  950. CallByName(obj=940e4c, method='Value', calltype=4 , comArgs=1)
  951. VTYPE_STRING: test-7-10 (iter=0)
  952.  
  953. CallByName 5 args
  954. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  955. VTYPE_LONG/BYREF: INTEGER BUFFER 0 (iter=0)
  956. FROM BYREF => VTYPE_LONG: 8 (iter=1)
  957. !!! HAS BUFFERS !!!
  958. Invoke failed!
  959.  
  960. CallByName 4 args
  961. CallByName(NULL) called!
  962. ReleaseObject(NULL) called!
  963.  
  964. CallByName 5 args
  965. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  966. FROM BYREF => VTYPE_LONG: 1 (iter=0)
  967. FROM BYREF => VTYPE_LONG: 8 (iter=1)
  968. VT_DISPATCH returned : return value from COM function was integer: 940f6c
  969.  
  970. CallByName 4 args
  971. CallByName(obj=940f6c, method='Value', calltype=4 , comArgs=1)
  972. VTYPE_STRING: test-8-1 (iter=0)
  973.  
  974. CallByName 5 args
  975. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  976. FROM BYREF => VTYPE_LONG: 2 (iter=0)
  977. FROM BYREF => VTYPE_LONG: 8 (iter=1)
  978. VT_DISPATCH returned : return value from COM function was integer: 940e94
  979.  
  980. CallByName 4 args
  981. CallByName(obj=940e94, method='Value', calltype=4 , comArgs=1)
  982. VTYPE_STRING: test-8-2 (iter=0)
  983.  
  984. CallByName 5 args
  985. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  986. FROM BYREF => VTYPE_LONG: 3 (iter=0)
  987. FROM BYREF => VTYPE_LONG: 8 (iter=1)
  988. VT_DISPATCH returned : return value from COM function was integer: 940edc
  989.  
  990. CallByName 4 args
  991. CallByName(obj=940edc, method='Value', calltype=4 , comArgs=1)
  992. VTYPE_STRING: test-8-3 (iter=0)
  993.  
  994. CallByName 5 args
  995. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  996. FROM BYREF => VTYPE_LONG: 4 (iter=0)
  997. FROM BYREF => VTYPE_LONG: 8 (iter=1)
  998. VT_DISPATCH returned : return value from COM function was integer: 94108c
  999.  
  1000. CallByName 4 args
  1001. CallByName(obj=94108c, method='Value', calltype=4 , comArgs=1)
  1002. VTYPE_STRING: test-8-4 (iter=0)
  1003.  
  1004. CallByName 5 args
  1005. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  1006. FROM BYREF => VTYPE_LONG: 5 (iter=0)
  1007. FROM BYREF => VTYPE_LONG: 8 (iter=1)
  1008. VT_DISPATCH returned : return value from COM function was integer: 940e4c
  1009.  
  1010. CallByName 4 args
  1011. CallByName(obj=940e4c, method='Value', calltype=4 , comArgs=1)
  1012. VTYPE_STRING: test-8-5 (iter=0)
  1013.  
  1014. CallByName 5 args
  1015. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  1016. FROM BYREF => VTYPE_LONG: 6 (iter=0)
  1017. FROM BYREF => VTYPE_LONG: 8 (iter=1)
  1018. VT_DISPATCH returned : return value from COM function was integer: 941044
  1019.  
  1020. CallByName 4 args
  1021. CallByName(obj=941044, method='Value', calltype=4 , comArgs=1)
  1022. VTYPE_STRING: test-8-6 (iter=0)
  1023.  
  1024. CallByName 5 args
  1025. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  1026. FROM BYREF => VTYPE_LONG: 7 (iter=0)
  1027. FROM BYREF => VTYPE_LONG: 8 (iter=1)
  1028. VT_DISPATCH returned : return value from COM function was integer: 940e4c
  1029.  
  1030. CallByName 4 args
  1031. CallByName(obj=940e4c, method='Value', calltype=4 , comArgs=1)
  1032. VTYPE_STRING: test-8-7 (iter=0)
  1033.  
  1034. CallByName 5 args
  1035. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  1036. FROM BYREF => VTYPE_LONG: 8 (iter=0)
  1037. FROM BYREF => VTYPE_LONG: 8 (iter=1)
  1038. VT_DISPATCH returned : return value from COM function was integer: 940ffc
  1039.  
  1040. CallByName 4 args
  1041. CallByName(obj=940ffc, method='Value', calltype=4 , comArgs=1)
  1042. VTYPE_STRING: test-8-8 (iter=0)
  1043.  
  1044. CallByName 5 args
  1045. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  1046. FROM BYREF => VTYPE_LONG: 9 (iter=0)
  1047. FROM BYREF => VTYPE_LONG: 8 (iter=1)
  1048. VT_DISPATCH returned : return value from COM function was integer: 940e4c
  1049.  
  1050. CallByName 4 args
  1051. CallByName(obj=940e4c, method='Value', calltype=4 , comArgs=1)
  1052. VTYPE_STRING: test-8-9 (iter=0)
  1053.  
  1054. CallByName 5 args
  1055. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  1056. FROM BYREF => VTYPE_LONG: 10 (iter=0)
  1057. FROM BYREF => VTYPE_LONG: 8 (iter=1)
  1058. VT_DISPATCH returned : return value from COM function was integer: 940e94
  1059.  
  1060. CallByName 4 args
  1061. CallByName(obj=940e94, method='Value', calltype=4 , comArgs=1)
  1062. VTYPE_STRING: test-8-10 (iter=0)
  1063.  
  1064. CallByName 5 args
  1065. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  1066. VTYPE_LONG/BYREF: INTEGER BUFFER 0 (iter=0)
  1067. FROM BYREF => VTYPE_LONG: 9 (iter=1)
  1068. !!! HAS BUFFERS !!!
  1069. Invoke failed!
  1070.  
  1071. CallByName 4 args
  1072. CallByName(NULL) called!
  1073. ReleaseObject(NULL) called!
  1074.  
  1075. CallByName 5 args
  1076. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  1077. FROM BYREF => VTYPE_LONG: 1 (iter=0)
  1078. FROM BYREF => VTYPE_LONG: 9 (iter=1)
  1079. VT_DISPATCH returned : return value from COM function was integer: 941044
  1080.  
  1081. CallByName 4 args
  1082. CallByName(obj=941044, method='Value', calltype=4 , comArgs=1)
  1083. VTYPE_STRING: test-9-1 (iter=0)
  1084.  
  1085. CallByName 5 args
  1086. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  1087. FROM BYREF => VTYPE_LONG: 2 (iter=0)
  1088. FROM BYREF => VTYPE_LONG: 9 (iter=1)
  1089. VT_DISPATCH returned : return value from COM function was integer: 9408f4
  1090.  
  1091. CallByName 4 args
  1092. CallByName(obj=9408f4, method='Value', calltype=4 , comArgs=1)
  1093. VTYPE_STRING: test-9-2 (iter=0)
  1094.  
  1095. CallByName 5 args
  1096. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  1097. FROM BYREF => VTYPE_LONG: 3 (iter=0)
  1098. FROM BYREF => VTYPE_LONG: 9 (iter=1)
  1099. VT_DISPATCH returned : return value from COM function was integer: 940e94
  1100.  
  1101. CallByName 4 args
  1102. CallByName(obj=940e94, method='Value', calltype=4 , comArgs=1)
  1103. VTYPE_STRING: test-9-3 (iter=0)
  1104.  
  1105. CallByName 5 args
  1106. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  1107. FROM BYREF => VTYPE_LONG: 4 (iter=0)
  1108. FROM BYREF => VTYPE_LONG: 9 (iter=1)
  1109. VT_DISPATCH returned : return value from COM function was integer: 940e4c
  1110.  
  1111. CallByName 4 args
  1112. CallByName(obj=940e4c, method='Value', calltype=4 , comArgs=1)
  1113. VTYPE_STRING: test-9-4 (iter=0)
  1114.  
  1115. CallByName 5 args
  1116. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  1117. FROM BYREF => VTYPE_LONG: 5 (iter=0)
  1118. FROM BYREF => VTYPE_LONG: 9 (iter=1)
  1119. VT_DISPATCH returned : return value from COM function was integer: 941044
  1120.  
  1121. CallByName 4 args
  1122. CallByName(obj=941044, method='Value', calltype=4 , comArgs=1)
  1123. VTYPE_STRING: test-9-5 (iter=0)
  1124.  
  1125. CallByName 5 args
  1126. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  1127. FROM BYREF => VTYPE_LONG: 6 (iter=0)
  1128. FROM BYREF => VTYPE_LONG: 9 (iter=1)
  1129. VT_DISPATCH returned : return value from COM function was integer: 940e94
  1130.  
  1131. CallByName 4 args
  1132. CallByName(obj=940e94, method='Value', calltype=4 , comArgs=1)
  1133. VTYPE_STRING: test-9-6 (iter=0)
  1134.  
  1135. CallByName 5 args
  1136. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  1137. FROM BYREF => VTYPE_LONG: 7 (iter=0)
  1138. FROM BYREF => VTYPE_LONG: 9 (iter=1)
  1139. VT_DISPATCH returned : return value from COM function was integer: 940ffc
  1140.  
  1141. CallByName 4 args
  1142. CallByName(obj=940ffc, method='Value', calltype=4 , comArgs=1)
  1143. VTYPE_STRING: test-9-7 (iter=0)
  1144.  
  1145. CallByName 5 args
  1146. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  1147. FROM BYREF => VTYPE_LONG: 8 (iter=0)
  1148. FROM BYREF => VTYPE_LONG: 9 (iter=1)
  1149. VT_DISPATCH returned : return value from COM function was integer: 940a14
  1150.  
  1151. CallByName 4 args
  1152. CallByName(obj=940a14, method='Value', calltype=4 , comArgs=1)
  1153. VTYPE_STRING: test-9-8 (iter=0)
  1154.  
  1155. CallByName 5 args
  1156. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  1157. FROM BYREF => VTYPE_LONG: 9 (iter=0)
  1158. FROM BYREF => VTYPE_LONG: 9 (iter=1)
  1159. VT_DISPATCH returned : return value from COM function was integer: 940e94
  1160.  
  1161. CallByName 4 args
  1162. CallByName(obj=940e94, method='Value', calltype=4 , comArgs=1)
  1163. VTYPE_STRING: test-9-9 (iter=0)
  1164.  
  1165. CallByName 5 args
  1166. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  1167. FROM BYREF => VTYPE_LONG: 10 (iter=0)
  1168. FROM BYREF => VTYPE_LONG: 9 (iter=1)
  1169. VT_DISPATCH returned : return value from COM function was integer: 940e94
  1170.  
  1171. CallByName 4 args
  1172. CallByName(obj=940e94, method='Value', calltype=4 , comArgs=1)
  1173. VTYPE_STRING: test-9-10 (iter=0)
  1174.  
  1175. CallByName 5 args
  1176. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  1177. VTYPE_LONG/BYREF: INTEGER BUFFER 0 (iter=0)
  1178. FROM BYREF => VTYPE_LONG: 10 (iter=1)
  1179. !!! HAS BUFFERS !!!
  1180. Invoke failed!
  1181.  
  1182. CallByName 4 args
  1183. CallByName(NULL) called!
  1184. ReleaseObject(NULL) called!
  1185.  
  1186. CallByName 5 args
  1187. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  1188. FROM BYREF => VTYPE_LONG: 1 (iter=0)
  1189. FROM BYREF => VTYPE_LONG: 10 (iter=1)
  1190. VT_DISPATCH returned : return value from COM function was integer: 940e4c
  1191.  
  1192. CallByName 4 args
  1193. CallByName(obj=940e4c, method='Value', calltype=4 , comArgs=1)
  1194. VTYPE_STRING: test-10-1 (iter=0)
  1195.  
  1196. CallByName 5 args
  1197. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  1198. FROM BYREF => VTYPE_LONG: 2 (iter=0)
  1199. FROM BYREF => VTYPE_LONG: 10 (iter=1)
  1200. VT_DISPATCH returned : return value from COM function was integer: 940e94
  1201.  
  1202. CallByName 4 args
  1203. CallByName(obj=940e94, method='Value', calltype=4 , comArgs=1)
  1204. VTYPE_STRING: test-10-2 (iter=0)
  1205.  
  1206. CallByName 5 args
  1207. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  1208. FROM BYREF => VTYPE_LONG: 3 (iter=0)
  1209. FROM BYREF => VTYPE_LONG: 10 (iter=1)
  1210. VT_DISPATCH returned : return value from COM function was integer: 940a14
  1211.  
  1212. CallByName 4 args
  1213. CallByName(obj=940a14, method='Value', calltype=4 , comArgs=1)
  1214. VTYPE_STRING: test-10-3 (iter=0)
  1215.  
  1216. CallByName 5 args
  1217. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  1218. FROM BYREF => VTYPE_LONG: 4 (iter=0)
  1219. FROM BYREF => VTYPE_LONG: 10 (iter=1)
  1220. VT_DISPATCH returned : return value from COM function was integer: 940fb4
  1221.  
  1222. CallByName 4 args
  1223. CallByName(obj=940fb4, method='Value', calltype=4 , comArgs=1)
  1224. VTYPE_STRING: test-10-4 (iter=0)
  1225.  
  1226. CallByName 5 args
  1227. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  1228. FROM BYREF => VTYPE_LONG: 5 (iter=0)
  1229. FROM BYREF => VTYPE_LONG: 10 (iter=1)
  1230. VT_DISPATCH returned : return value from COM function was integer: 940e4c
  1231.  
  1232. CallByName 4 args
  1233. CallByName(obj=940e4c, method='Value', calltype=4 , comArgs=1)
  1234. VTYPE_STRING: test-10-5 (iter=0)
  1235.  
  1236. CallByName 5 args
  1237. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  1238. FROM BYREF => VTYPE_LONG: 6 (iter=0)
  1239. FROM BYREF => VTYPE_LONG: 10 (iter=1)
  1240. VT_DISPATCH returned : return value from COM function was integer: 9408f4
  1241.  
  1242. CallByName 4 args
  1243. CallByName(obj=9408f4, method='Value', calltype=4 , comArgs=1)
  1244. VTYPE_STRING: test-10-6 (iter=0)
  1245.  
  1246. CallByName 5 args
  1247. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  1248. FROM BYREF => VTYPE_LONG: 7 (iter=0)
  1249. FROM BYREF => VTYPE_LONG: 10 (iter=1)
  1250. VT_DISPATCH returned : return value from COM function was integer: 94108c
  1251.  
  1252. CallByName 4 args
  1253. CallByName(obj=94108c, method='Value', calltype=4 , comArgs=1)
  1254. VTYPE_STRING: test-10-7 (iter=0)
  1255.  
  1256. CallByName 5 args
  1257. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  1258. FROM BYREF => VTYPE_LONG: 8 (iter=0)
  1259. FROM BYREF => VTYPE_LONG: 10 (iter=1)
  1260. VT_DISPATCH returned : return value from COM function was integer: 940edc
  1261.  
  1262. CallByName 4 args
  1263. CallByName(obj=940edc, method='Value', calltype=4 , comArgs=1)
  1264. VTYPE_STRING: test-10-8 (iter=0)
  1265.  
  1266. CallByName 5 args
  1267. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  1268. FROM BYREF => VTYPE_LONG: 9 (iter=0)
  1269. FROM BYREF => VTYPE_LONG: 10 (iter=1)
  1270. VT_DISPATCH returned : return value from COM function was integer: 9408f4
  1271.  
  1272. CallByName 4 args
  1273. CallByName(obj=9408f4, method='Value', calltype=4 , comArgs=1)
  1274. VTYPE_STRING: test-10-9 (iter=0)
  1275.  
  1276. CallByName 5 args
  1277. CallByName(obj=940d2c, method='Cells', calltype=2 , comArgs=2)
  1278. FROM BYREF => VTYPE_LONG: 10 (iter=0)
  1279. FROM BYREF => VTYPE_LONG: 10 (iter=1)
  1280. VT_DISPATCH returned : return value from COM function was integer: 941044
  1281.  
  1282. CallByName 4 args
  1283. CallByName(obj=941044, method='Value', calltype=4 , comArgs=1)
  1284. VTYPE_STRING: test-10-10 (iter=0)
  1285.  
  1286. CallByName 4 args
  1287. CallByName(obj=940b34, method='SaveAs', calltype=1 , comArgs=1)
  1288. FROM BYREF => VTYPE_STRING: C:\ScriptBASIC\examples\warehouse.xls (iter=0)
  1289. VT_BOOL to VT_UI8 returned : return value from COM function was integer: 65535
  1290.  
  1291. CallByName 2 args
  1292. CallByName(obj=940b34, method='Close', calltype=1 , comArgs=0)
  1293. VT_BOOL to VT_UI8 returned : return value from COM function was integer: 65535
  1294.  
  1295. CallByName 2 args
  1296. CallByName(obj=941164, method='Quit', calltype=1 , comArgs=0)
  1297. VT_EMPTY returned : return value from COM function was empty
  1298. Spreadsheet Created.
  1299.  
  1300. C:\ScriptBASIC\examples>
  1301.  

Attached is Joes's Typelib of the Excel object I exported to a text file.

Code: Visual Basic
  1. ' ########################################################################################
  2. ' Interface name: Workbooks
  3. ' IID: {000208DB-0000-0000-C000-000000000046}
  4. ' Attributes =  4288 [&h000010C0] [Dual] [Nonextensible] [Dispatchable]
  5. ' Inherited interface = IDispatch
  6. ' Number of methods = 26
  7. ' ########################################################################################
  8.  
  9. #ifndef __Workbooks_INTERFACE_DEFINED__
  10. #define __Workbooks_INTERFACE_DEFINED__
  11.  
  12. TYPE WorkbooksVTbl
  13.    QueryInterface AS FUNCTION (BYVAL this AS Workbooks PTR, BYVAL riid AS CONST IID CONST PTR, BYVAL ppvObj AS ANY PTR PTR) AS HRESULT
  14.    AddRef AS FUNCTION (BYVAL this AS Workbooks PTR) AS ULONG
  15.    Release AS FUNCTION (BYVAL this AS Workbooks PTR) AS ULONG
  16.    GetTypeInfoCount AS FUNCTION (BYVAL this AS Workbooks PTR, BYVAL pctinfo AS UINT PTR) AS HRESULT
  17.    GetTypeInfo AS FUNCTION (BYVAL this AS Workbooks PTR, BYVAL iTInfo AS UINT, BYVAL lcid AS LCID, BYVAL ppTInfo AS ITypeInfo PTR PTR) AS HRESULT
  18.    GetIDsOfNames AS FUNCTION (BYVAL this AS Workbooks PTR, BYVAL iTInfo AS UINT, BYVAL lcid AS LCID, BYVAL ppTInfo AS ITypeInfo PTR PTR) AS HRESULT
  19.    Invoke AS FUNCTION (BYVAL this AS Workbooks PTR, BYVAL dispIdMember AS DISPID, BYVAL riid AS CONST IID CONST PTR, BYVAL lcid AS LCID, BYVAL wFlags AS WORD, BYVAL pDispParams AS DISPPARAMS PTR, BYVAL pVarResult AS VARIANT PTR, BYVAL pExcepInfo AS EXCEPINFO PTR, BYVAL puArgErr AS UINT PTR) AS HRESULT
  20.    get_Application AS FUNCTION (BYVAL this AS Workbooks PTR, BYVAL rhs AS PTR PTR) AS HRESULT
  21.    get_Creator AS FUNCTION (BYVAL this AS Workbooks PTR, BYVAL rhs AS XlCreator PTR) AS HRESULT
  22.    get_Parent AS FUNCTION (BYVAL this AS Workbooks PTR, BYVAL rhs AS IDispatch PTR) AS HRESULT
  23.    Add AS FUNCTION (BYVAL this AS Workbooks PTR, BYVAL Template AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL rhs AS PTR PTR) AS HRESULT
  24.    Close AS FUNCTION (BYVAL this AS Workbooks PTR) AS HRESULT
  25.    get_Count AS FUNCTION (BYVAL this AS Workbooks PTR, BYVAL rhs AS LONG PTR) AS HRESULT
  26.    get_Item AS FUNCTION (BYVAL this AS Workbooks PTR, BYVAL Index AS VARIANT, BYVAL rhs AS PTR PTR) AS HRESULT
  27.    get__NewEnum AS FUNCTION (BYVAL this AS Workbooks PTR, BYVAL rhs AS IUnknown PTR) AS HRESULT
  28.    _Open AS FUNCTION (BYVAL this AS Workbooks PTR, BYVAL Filename AS BSTR, BYVAL UpdateLinks AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL ReadOnly AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL Format AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL Password AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL WriteResPassword AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL IgnoreReadOnlyRecommended AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL Origin AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL Delimiter AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL Editable AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL Notify AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL Converter AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL AddToMru AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL rhs AS PTR PTR) AS HRESULT
  29.    __OpenText AS FUNCTION (BYVAL this AS Workbooks PTR, BYVAL Filename AS BSTR, BYVAL Origin AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL StartRow AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL DataType AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL TextQualifier AS XlTextQualifier = 1, BYVAL ConsecutiveDelimiter AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL Tab AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL Semicolon AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL Comma AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL Space AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL Other AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL OtherChar AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL FieldInfo AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL TextVisualLayout AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND)) AS HRESULT
  30.    get__Default AS FUNCTION (BYVAL this AS Workbooks PTR, BYVAL Index AS VARIANT, BYVAL rhs AS PTR PTR) AS HRESULT
  31.    _OpenText AS FUNCTION (BYVAL this AS Workbooks PTR, BYVAL Filename AS BSTR, BYVAL Origin AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL StartRow AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL DataType AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL TextQualifier AS XlTextQualifier = 1, BYVAL ConsecutiveDelimiter AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL Tab AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL Semicolon AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL Comma AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL Space AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL Other AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL OtherChar AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL FieldInfo AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL TextVisualLayout AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL DecimalSeparator AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL ThousandsSeparator AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND)) AS HRESULT
  32.    Open AS FUNCTION (BYVAL this AS Workbooks PTR, BYVAL Filename AS BSTR, BYVAL UpdateLinks AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL ReadOnly AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL Format AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL Password AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL WriteResPassword AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL IgnoreReadOnlyRecommended AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL Origin AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL Delimiter AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL Editable AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL Notify AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL Converter AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL AddToMru AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL Local AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL CorruptLoad AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL rhs AS PTR PTR) AS HRESULT
  33.    OpenText AS FUNCTION (BYVAL this AS Workbooks PTR, BYVAL Filename AS BSTR, BYVAL Origin AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL StartRow AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL DataType AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL TextQualifier AS XlTextQualifier = 1, BYVAL ConsecutiveDelimiter AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL Tab AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL Semicolon AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL Comma AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL Space AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL Other AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL OtherChar AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL FieldInfo AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL TextVisualLayout AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL DecimalSeparator AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL ThousandsSeparator AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL TrailingMinusNumbers AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL Local AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND)) AS HRESULT
  34.    OpenDatabase AS FUNCTION (BYVAL this AS Workbooks PTR, BYVAL Filename AS BSTR, BYVAL CommandText AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL CommandType AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL BackgroundQuery AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL ImportDataAs AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL rhs AS PTR PTR) AS HRESULT
  35.    CheckOut AS FUNCTION (BYVAL this AS Workbooks PTR, BYVAL Filename AS BSTR) AS HRESULT
  36.    CanCheckOut AS FUNCTION (BYVAL this AS Workbooks PTR, BYVAL Filename AS BSTR, BYVAL rhs AS VARIANT_BOOL PTR) AS HRESULT
  37.    _OpenXML AS FUNCTION (BYVAL this AS Workbooks PTR, BYVAL Filename AS BSTR, BYVAL Stylesheets AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL rhs AS PTR PTR) AS HRESULT
  38.    OpenXML AS FUNCTION (BYVAL this AS Workbooks PTR, BYVAL Filename AS BSTR, BYVAL Stylesheets AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL LoadOption AS VARIANT = TYPE(VT_ERROR,0,0,0,DISP_E_PARAMNOTFOUND), BYVAL rhs AS PTR PTR) AS HRESULT
  39. END TYPE
  40.  


AddRef AS FUNCTION (BYVAL this AS Workbooks PTR) AS ULONG

A method and returns a long.
« Last Edit: March 23, 2021, 07:06:59 pm by John »

John

  • Hero Member
  • *****
  • Posts: 3966
Re: COM OLE
« Reply #61 on: March 23, 2021, 07:52:40 pm »
After looking at the debug output I noticed BUFFER issues and invoke errors. It seems that the i and j FOR/NEXT loops should be 1 to 10 not 0 to 10.

Code: Text
  1. C:\ScriptBASIC\examples>sbc excel.sb
  2. File already exists deleting: C:\ScriptBASIC\examples\warehouse.xls
  3.  
  4. CreateObject 2 args
  5. CreateObject(:SET, {00024500-0000-0000-C000-000000000046})
  6. {00024500-0000-0000-C000-000000000046} seems to return d!Jw☺valid IDISPATCH pointer
  7.  
  8. CallByName 3 args
  9. CallByName(obj=7c01b4, method='Workbooks', calltype=2 , comArgs=0)
  10. VT_DISPATCH returned : return value from COM function was integer: 7c079c
  11.  
  12. CallByName 2 args
  13. CallByName(obj=7c079c, method='Add', calltype=1 , comArgs=0)
  14. VT_DISPATCH returned : return value from COM function was integer: 7c0994
  15.  
  16. CallByName 4 args
  17. CallByName(obj=7c0994, method='Worksheets', calltype=2 , comArgs=1)
  18. VTYPE_LONG: 1 (iter=0)
  19. VT_DISPATCH returned : return value from COM function was integer: 7c028c
  20.  
  21. CallByName 4 args
  22. CallByName(obj=7c028c, method='Range', calltype=2 , comArgs=1)
  23. VTYPE_STRING: G3 (iter=0)
  24. VT_DISPATCH returned : return value from COM function was integer: 7c0124
  25.  
  26. CallByName 4 args
  27. CallByName(obj=7c0124, method='Value', calltype=4 , comArgs=1)
  28. VTYPE_STRING: 123 (iter=0)
  29.  
  30. CallByName 4 args
  31. CallByName(obj=7c028c, method='Range', calltype=2 , comArgs=1)
  32. VTYPE_STRING: B1:B5 (iter=0)
  33. VT_DISPATCH returned : return value from COM function was integer: 7c070c
  34.  
  35. CallByName 6 args
  36. CallByName(obj=7c070c, method='BorderAround', calltype=1 , comArgs=3)
  37. VTYPE_LONG: 3 (iter=0)
  38. VTYPE_LONG: -4138 (iter=1)
  39. VTYPE_LONG: 1 (iter=2)
  40. VT_BOOL to VT_UI8 returned : return value from COM function was integer: 65535
  41.  
  42. CallByName 3 args
  43. CallByName(obj=7c070c, method='Interior', calltype=2 , comArgs=0)
  44. VT_DISPATCH returned : return value from COM function was integer: 7c0244
  45.  
  46. CallByName 4 args
  47. CallByName(obj=7c0244, method='ColorIndex', calltype=4 , comArgs=1)
  48. VTYPE_STRING: 38 (iter=0)
  49.  
  50. CallByName 4 args
  51. CallByName(obj=7c0244, method='Pattern', calltype=4 , comArgs=1)
  52. VTYPE_STRING: xlSolid (iter=0)
  53. Invoke failed!
  54.  
  55. CallByName 5 args
  56. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  57. FROM BYREF => VTYPE_LONG: 1 (iter=0)
  58. FROM BYREF => VTYPE_LONG: 1 (iter=1)
  59. VT_DISPATCH returned : return value from COM function was integer: 7c0634
  60.  
  61. CallByName 4 args
  62. CallByName(obj=7c0634, method='Value', calltype=4 , comArgs=1)
  63. VTYPE_STRING: test-1-1 (iter=0)
  64.  
  65. CallByName 5 args
  66. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  67. FROM BYREF => VTYPE_LONG: 2 (iter=0)
  68. FROM BYREF => VTYPE_LONG: 1 (iter=1)
  69. VT_DISPATCH returned : return value from COM function was integer: 7c055c
  70.  
  71. CallByName 4 args
  72. CallByName(obj=7c055c, method='Value', calltype=4 , comArgs=1)
  73. VTYPE_STRING: test-1-2 (iter=0)
  74.  
  75. CallByName 5 args
  76. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  77. FROM BYREF => VTYPE_LONG: 3 (iter=0)
  78. FROM BYREF => VTYPE_LONG: 1 (iter=1)
  79. VT_DISPATCH returned : return value from COM function was integer: 7c0124
  80.  
  81. CallByName 4 args
  82. CallByName(obj=7c0124, method='Value', calltype=4 , comArgs=1)
  83. VTYPE_STRING: test-1-3 (iter=0)
  84.  
  85. CallByName 5 args
  86. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  87. FROM BYREF => VTYPE_LONG: 4 (iter=0)
  88. FROM BYREF => VTYPE_LONG: 1 (iter=1)
  89. VT_DISPATCH returned : return value from COM function was integer: 7c09dc
  90.  
  91. CallByName 4 args
  92. CallByName(obj=7c09dc, method='Value', calltype=4 , comArgs=1)
  93. VTYPE_STRING: test-1-4 (iter=0)
  94.  
  95. CallByName 5 args
  96. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  97. FROM BYREF => VTYPE_LONG: 5 (iter=0)
  98. FROM BYREF => VTYPE_LONG: 1 (iter=1)
  99. VT_DISPATCH returned : return value from COM function was integer: 7c09dc
  100.  
  101. CallByName 4 args
  102. CallByName(obj=7c09dc, method='Value', calltype=4 , comArgs=1)
  103. VTYPE_STRING: test-1-5 (iter=0)
  104.  
  105. CallByName 5 args
  106. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  107. FROM BYREF => VTYPE_LONG: 6 (iter=0)
  108. FROM BYREF => VTYPE_LONG: 1 (iter=1)
  109. VT_DISPATCH returned : return value from COM function was integer: 7c03ac
  110.  
  111. CallByName 4 args
  112. CallByName(obj=7c03ac, method='Value', calltype=4 , comArgs=1)
  113. VTYPE_STRING: test-1-6 (iter=0)
  114.  
  115. CallByName 5 args
  116. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  117. FROM BYREF => VTYPE_LONG: 7 (iter=0)
  118. FROM BYREF => VTYPE_LONG: 1 (iter=1)
  119. VT_DISPATCH returned : return value from COM function was integer: 7c0124
  120.  
  121. CallByName 4 args
  122. CallByName(obj=7c0124, method='Value', calltype=4 , comArgs=1)
  123. VTYPE_STRING: test-1-7 (iter=0)
  124.  
  125. CallByName 5 args
  126. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  127. FROM BYREF => VTYPE_LONG: 8 (iter=0)
  128. FROM BYREF => VTYPE_LONG: 1 (iter=1)
  129. VT_DISPATCH returned : return value from COM function was integer: 7c09dc
  130.  
  131. CallByName 4 args
  132. CallByName(obj=7c09dc, method='Value', calltype=4 , comArgs=1)
  133. VTYPE_STRING: test-1-8 (iter=0)
  134.  
  135. CallByName 5 args
  136. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  137. FROM BYREF => VTYPE_LONG: 9 (iter=0)
  138. FROM BYREF => VTYPE_LONG: 1 (iter=1)
  139. VT_DISPATCH returned : return value from COM function was integer: 7c09dc
  140.  
  141. CallByName 4 args
  142. CallByName(obj=7c09dc, method='Value', calltype=4 , comArgs=1)
  143. VTYPE_STRING: test-1-9 (iter=0)
  144.  
  145. CallByName 5 args
  146. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  147. FROM BYREF => VTYPE_LONG: 10 (iter=0)
  148. FROM BYREF => VTYPE_LONG: 1 (iter=1)
  149. VT_DISPATCH returned : return value from COM function was integer: 7c09dc
  150.  
  151. CallByName 4 args
  152. CallByName(obj=7c09dc, method='Value', calltype=4 , comArgs=1)
  153. VTYPE_STRING: test-1-10 (iter=0)
  154.  
  155. CallByName 5 args
  156. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  157. FROM BYREF => VTYPE_LONG: 1 (iter=0)
  158. FROM BYREF => VTYPE_LONG: 2 (iter=1)
  159. VT_DISPATCH returned : return value from COM function was integer: 7c0244
  160.  
  161. CallByName 4 args
  162. CallByName(obj=7c0244, method='Value', calltype=4 , comArgs=1)
  163. VTYPE_STRING: test-2-1 (iter=0)
  164.  
  165. CallByName 5 args
  166. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  167. FROM BYREF => VTYPE_LONG: 2 (iter=0)
  168. FROM BYREF => VTYPE_LONG: 2 (iter=1)
  169. VT_DISPATCH returned : return value from COM function was integer: 7c0124
  170.  
  171. CallByName 4 args
  172. CallByName(obj=7c0124, method='Value', calltype=4 , comArgs=1)
  173. VTYPE_STRING: test-2-2 (iter=0)
  174.  
  175. CallByName 5 args
  176. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  177. FROM BYREF => VTYPE_LONG: 3 (iter=0)
  178. FROM BYREF => VTYPE_LONG: 2 (iter=1)
  179. VT_DISPATCH returned : return value from COM function was integer: 7c04cc
  180.  
  181. CallByName 4 args
  182. CallByName(obj=7c04cc, method='Value', calltype=4 , comArgs=1)
  183. VTYPE_STRING: test-2-3 (iter=0)
  184.  
  185. CallByName 5 args
  186. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  187. FROM BYREF => VTYPE_LONG: 4 (iter=0)
  188. FROM BYREF => VTYPE_LONG: 2 (iter=1)
  189. VT_DISPATCH returned : return value from COM function was integer: 7c03ac
  190.  
  191. CallByName 4 args
  192. CallByName(obj=7c03ac, method='Value', calltype=4 , comArgs=1)
  193. VTYPE_STRING: test-2-4 (iter=0)
  194.  
  195. CallByName 5 args
  196. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  197. FROM BYREF => VTYPE_LONG: 5 (iter=0)
  198. FROM BYREF => VTYPE_LONG: 2 (iter=1)
  199. VT_DISPATCH returned : return value from COM function was integer: 7c09dc
  200.  
  201. CallByName 4 args
  202. CallByName(obj=7c09dc, method='Value', calltype=4 , comArgs=1)
  203. VTYPE_STRING: test-2-5 (iter=0)
  204.  
  205. CallByName 5 args
  206. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  207. FROM BYREF => VTYPE_LONG: 6 (iter=0)
  208. FROM BYREF => VTYPE_LONG: 2 (iter=1)
  209. VT_DISPATCH returned : return value from COM function was integer: 7c09dc
  210.  
  211. CallByName 4 args
  212. CallByName(obj=7c09dc, method='Value', calltype=4 , comArgs=1)
  213. VTYPE_STRING: test-2-6 (iter=0)
  214.  
  215. CallByName 5 args
  216. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  217. FROM BYREF => VTYPE_LONG: 7 (iter=0)
  218. FROM BYREF => VTYPE_LONG: 2 (iter=1)
  219. VT_DISPATCH returned : return value from COM function was integer: 7c04cc
  220.  
  221. CallByName 4 args
  222. CallByName(obj=7c04cc, method='Value', calltype=4 , comArgs=1)
  223. VTYPE_STRING: test-2-7 (iter=0)
  224.  
  225. CallByName 5 args
  226. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  227. FROM BYREF => VTYPE_LONG: 8 (iter=0)
  228. FROM BYREF => VTYPE_LONG: 2 (iter=1)
  229. VT_DISPATCH returned : return value from COM function was integer: 7c05ec
  230.  
  231. CallByName 4 args
  232. CallByName(obj=7c05ec, method='Value', calltype=4 , comArgs=1)
  233. VTYPE_STRING: test-2-8 (iter=0)
  234.  
  235. CallByName 5 args
  236. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  237. FROM BYREF => VTYPE_LONG: 9 (iter=0)
  238. FROM BYREF => VTYPE_LONG: 2 (iter=1)
  239. VT_DISPATCH returned : return value from COM function was integer: 7c0634
  240.  
  241. CallByName 4 args
  242. CallByName(obj=7c0634, method='Value', calltype=4 , comArgs=1)
  243. VTYPE_STRING: test-2-9 (iter=0)
  244.  
  245. CallByName 5 args
  246. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  247. FROM BYREF => VTYPE_LONG: 10 (iter=0)
  248. FROM BYREF => VTYPE_LONG: 2 (iter=1)
  249. VT_DISPATCH returned : return value from COM function was integer: 7c043c
  250.  
  251. CallByName 4 args
  252. CallByName(obj=7c043c, method='Value', calltype=4 , comArgs=1)
  253. VTYPE_STRING: test-2-10 (iter=0)
  254.  
  255. CallByName 5 args
  256. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  257. FROM BYREF => VTYPE_LONG: 1 (iter=0)
  258. FROM BYREF => VTYPE_LONG: 3 (iter=1)
  259. VT_DISPATCH returned : return value from COM function was integer: 7c09dc
  260.  
  261. CallByName 4 args
  262. CallByName(obj=7c09dc, method='Value', calltype=4 , comArgs=1)
  263. VTYPE_STRING: test-3-1 (iter=0)
  264.  
  265. CallByName 5 args
  266. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  267. FROM BYREF => VTYPE_LONG: 2 (iter=0)
  268. FROM BYREF => VTYPE_LONG: 3 (iter=1)
  269. VT_DISPATCH returned : return value from COM function was integer: 7c055c
  270.  
  271. CallByName 4 args
  272. CallByName(obj=7c055c, method='Value', calltype=4 , comArgs=1)
  273. VTYPE_STRING: test-3-2 (iter=0)
  274.  
  275. CallByName 5 args
  276. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  277. FROM BYREF => VTYPE_LONG: 3 (iter=0)
  278. FROM BYREF => VTYPE_LONG: 3 (iter=1)
  279. VT_DISPATCH returned : return value from COM function was integer: 7c0124
  280.  
  281. CallByName 4 args
  282. CallByName(obj=7c0124, method='Value', calltype=4 , comArgs=1)
  283. VTYPE_STRING: test-3-3 (iter=0)
  284.  
  285. CallByName 5 args
  286. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  287. FROM BYREF => VTYPE_LONG: 4 (iter=0)
  288. FROM BYREF => VTYPE_LONG: 3 (iter=1)
  289. VT_DISPATCH returned : return value from COM function was integer: 7c067c
  290.  
  291. CallByName 4 args
  292. CallByName(obj=7c067c, method='Value', calltype=4 , comArgs=1)
  293. VTYPE_STRING: test-3-4 (iter=0)
  294.  
  295. CallByName 5 args
  296. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  297. FROM BYREF => VTYPE_LONG: 5 (iter=0)
  298. FROM BYREF => VTYPE_LONG: 3 (iter=1)
  299. VT_DISPATCH returned : return value from COM function was integer: 7c067c
  300.  
  301. CallByName 4 args
  302. CallByName(obj=7c067c, method='Value', calltype=4 , comArgs=1)
  303. VTYPE_STRING: test-3-5 (iter=0)
  304.  
  305. CallByName 5 args
  306. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  307. FROM BYREF => VTYPE_LONG: 6 (iter=0)
  308. FROM BYREF => VTYPE_LONG: 3 (iter=1)
  309. VT_DISPATCH returned : return value from COM function was integer: 7c09dc
  310.  
  311. CallByName 4 args
  312. CallByName(obj=7c09dc, method='Value', calltype=4 , comArgs=1)
  313. VTYPE_STRING: test-3-6 (iter=0)
  314.  
  315. CallByName 5 args
  316. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  317. FROM BYREF => VTYPE_LONG: 7 (iter=0)
  318. FROM BYREF => VTYPE_LONG: 3 (iter=1)
  319. VT_DISPATCH returned : return value from COM function was integer: 7c0124
  320.  
  321. CallByName 4 args
  322. CallByName(obj=7c0124, method='Value', calltype=4 , comArgs=1)
  323. VTYPE_STRING: test-3-7 (iter=0)
  324.  
  325. CallByName 5 args
  326. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  327. FROM BYREF => VTYPE_LONG: 8 (iter=0)
  328. FROM BYREF => VTYPE_LONG: 3 (iter=1)
  329. VT_DISPATCH returned : return value from COM function was integer: 7c09dc
  330.  
  331. CallByName 4 args
  332. CallByName(obj=7c09dc, method='Value', calltype=4 , comArgs=1)
  333. VTYPE_STRING: test-3-8 (iter=0)
  334.  
  335. CallByName 5 args
  336. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  337. FROM BYREF => VTYPE_LONG: 9 (iter=0)
  338. FROM BYREF => VTYPE_LONG: 3 (iter=1)
  339. VT_DISPATCH returned : return value from COM function was integer: 7c09dc
  340.  
  341. CallByName 4 args
  342. CallByName(obj=7c09dc, method='Value', calltype=4 , comArgs=1)
  343. VTYPE_STRING: test-3-9 (iter=0)
  344.  
  345. CallByName 5 args
  346. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  347. FROM BYREF => VTYPE_LONG: 10 (iter=0)
  348. FROM BYREF => VTYPE_LONG: 3 (iter=1)
  349. VT_DISPATCH returned : return value from COM function was integer: 7c0124
  350.  
  351. CallByName 4 args
  352. CallByName(obj=7c0124, method='Value', calltype=4 , comArgs=1)
  353. VTYPE_STRING: test-3-10 (iter=0)
  354.  
  355. CallByName 5 args
  356. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  357. FROM BYREF => VTYPE_LONG: 1 (iter=0)
  358. FROM BYREF => VTYPE_LONG: 4 (iter=1)
  359. VT_DISPATCH returned : return value from COM function was integer: 7c09dc
  360.  
  361. CallByName 4 args
  362. CallByName(obj=7c09dc, method='Value', calltype=4 , comArgs=1)
  363. VTYPE_STRING: test-4-1 (iter=0)
  364.  
  365. CallByName 5 args
  366. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  367. FROM BYREF => VTYPE_LONG: 2 (iter=0)
  368. FROM BYREF => VTYPE_LONG: 4 (iter=1)
  369. VT_DISPATCH returned : return value from COM function was integer: 7c070c
  370.  
  371. CallByName 4 args
  372. CallByName(obj=7c070c, method='Value', calltype=4 , comArgs=1)
  373. VTYPE_STRING: test-4-2 (iter=0)
  374.  
  375. CallByName 5 args
  376. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  377. FROM BYREF => VTYPE_LONG: 3 (iter=0)
  378. FROM BYREF => VTYPE_LONG: 4 (iter=1)
  379. VT_DISPATCH returned : return value from COM function was integer: 7c09dc
  380.  
  381. CallByName 4 args
  382. CallByName(obj=7c09dc, method='Value', calltype=4 , comArgs=1)
  383. VTYPE_STRING: test-4-3 (iter=0)
  384.  
  385. CallByName 5 args
  386. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  387. FROM BYREF => VTYPE_LONG: 4 (iter=0)
  388. FROM BYREF => VTYPE_LONG: 4 (iter=1)
  389. VT_DISPATCH returned : return value from COM function was integer: 7c055c
  390.  
  391. CallByName 4 args
  392. CallByName(obj=7c055c, method='Value', calltype=4 , comArgs=1)
  393. VTYPE_STRING: test-4-4 (iter=0)
  394.  
  395. CallByName 5 args
  396. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  397. FROM BYREF => VTYPE_LONG: 5 (iter=0)
  398. FROM BYREF => VTYPE_LONG: 4 (iter=1)
  399. VT_DISPATCH returned : return value from COM function was integer: 7c09dc
  400.  
  401. CallByName 4 args
  402. CallByName(obj=7c09dc, method='Value', calltype=4 , comArgs=1)
  403. VTYPE_STRING: test-4-5 (iter=0)
  404.  
  405. CallByName 5 args
  406. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  407. FROM BYREF => VTYPE_LONG: 6 (iter=0)
  408. FROM BYREF => VTYPE_LONG: 4 (iter=1)
  409. VT_DISPATCH returned : return value from COM function was integer: 7c055c
  410.  
  411. CallByName 4 args
  412. CallByName(obj=7c055c, method='Value', calltype=4 , comArgs=1)
  413. VTYPE_STRING: test-4-6 (iter=0)
  414.  
  415. CallByName 5 args
  416. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  417. FROM BYREF => VTYPE_LONG: 7 (iter=0)
  418. FROM BYREF => VTYPE_LONG: 4 (iter=1)
  419. VT_DISPATCH returned : return value from COM function was integer: 7c043c
  420.  
  421. CallByName 4 args
  422. CallByName(obj=7c043c, method='Value', calltype=4 , comArgs=1)
  423. VTYPE_STRING: test-4-7 (iter=0)
  424.  
  425. CallByName 5 args
  426. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  427. FROM BYREF => VTYPE_LONG: 8 (iter=0)
  428. FROM BYREF => VTYPE_LONG: 4 (iter=1)
  429. VT_DISPATCH returned : return value from COM function was integer: 7c04cc
  430.  
  431. CallByName 4 args
  432. CallByName(obj=7c04cc, method='Value', calltype=4 , comArgs=1)
  433. VTYPE_STRING: test-4-8 (iter=0)
  434.  
  435. CallByName 5 args
  436. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  437. FROM BYREF => VTYPE_LONG: 9 (iter=0)
  438. FROM BYREF => VTYPE_LONG: 4 (iter=1)
  439. VT_DISPATCH returned : return value from COM function was integer: 7c055c
  440.  
  441. CallByName 4 args
  442. CallByName(obj=7c055c, method='Value', calltype=4 , comArgs=1)
  443. VTYPE_STRING: test-4-9 (iter=0)
  444.  
  445. CallByName 5 args
  446. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  447. FROM BYREF => VTYPE_LONG: 10 (iter=0)
  448. FROM BYREF => VTYPE_LONG: 4 (iter=1)
  449. VT_DISPATCH returned : return value from COM function was integer: 7c03ac
  450.  
  451. CallByName 4 args
  452. CallByName(obj=7c03ac, method='Value', calltype=4 , comArgs=1)
  453. VTYPE_STRING: test-4-10 (iter=0)
  454.  
  455. CallByName 5 args
  456. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  457. FROM BYREF => VTYPE_LONG: 1 (iter=0)
  458. FROM BYREF => VTYPE_LONG: 5 (iter=1)
  459. VT_DISPATCH returned : return value from COM function was integer: 7c0124
  460.  
  461. CallByName 4 args
  462. CallByName(obj=7c0124, method='Value', calltype=4 , comArgs=1)
  463. VTYPE_STRING: test-5-1 (iter=0)
  464.  
  465. CallByName 5 args
  466. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  467. FROM BYREF => VTYPE_LONG: 2 (iter=0)
  468. FROM BYREF => VTYPE_LONG: 5 (iter=1)
  469. VT_DISPATCH returned : return value from COM function was integer: 7c09dc
  470.  
  471. CallByName 4 args
  472. CallByName(obj=7c09dc, method='Value', calltype=4 , comArgs=1)
  473. VTYPE_STRING: test-5-2 (iter=0)
  474.  
  475. CallByName 5 args
  476. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  477. FROM BYREF => VTYPE_LONG: 3 (iter=0)
  478. FROM BYREF => VTYPE_LONG: 5 (iter=1)
  479. VT_DISPATCH returned : return value from COM function was integer: 7c01fc
  480.  
  481. CallByName 4 args
  482. CallByName(obj=7c01fc, method='Value', calltype=4 , comArgs=1)
  483. VTYPE_STRING: test-5-3 (iter=0)
  484.  
  485. CallByName 5 args
  486. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  487. FROM BYREF => VTYPE_LONG: 4 (iter=0)
  488. FROM BYREF => VTYPE_LONG: 5 (iter=1)
  489. VT_DISPATCH returned : return value from COM function was integer: 7c0124
  490.  
  491. CallByName 4 args
  492. CallByName(obj=7c0124, method='Value', calltype=4 , comArgs=1)
  493. VTYPE_STRING: test-5-4 (iter=0)
  494.  
  495. CallByName 5 args
  496. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  497. FROM BYREF => VTYPE_LONG: 5 (iter=0)
  498. FROM BYREF => VTYPE_LONG: 5 (iter=1)
  499. VT_DISPATCH returned : return value from COM function was integer: 7c0244
  500.  
  501. CallByName 4 args
  502. CallByName(obj=7c0244, method='Value', calltype=4 , comArgs=1)
  503. VTYPE_STRING: test-5-5 (iter=0)
  504.  
  505. CallByName 5 args
  506. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  507. FROM BYREF => VTYPE_LONG: 6 (iter=0)
  508. FROM BYREF => VTYPE_LONG: 5 (iter=1)
  509. VT_DISPATCH returned : return value from COM function was integer: 7c0124
  510.  
  511. CallByName 4 args
  512. CallByName(obj=7c0124, method='Value', calltype=4 , comArgs=1)
  513. VTYPE_STRING: test-5-6 (iter=0)
  514.  
  515. CallByName 5 args
  516. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  517. FROM BYREF => VTYPE_LONG: 7 (iter=0)
  518. FROM BYREF => VTYPE_LONG: 5 (iter=1)
  519. VT_DISPATCH returned : return value from COM function was integer: 7c02d4
  520.  
  521. CallByName 4 args
  522. CallByName(obj=7c02d4, method='Value', calltype=4 , comArgs=1)
  523. VTYPE_STRING: test-5-7 (iter=0)
  524.  
  525. CallByName 5 args
  526. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  527. FROM BYREF => VTYPE_LONG: 8 (iter=0)
  528. FROM BYREF => VTYPE_LONG: 5 (iter=1)
  529. VT_DISPATCH returned : return value from COM function was integer: 7c09dc
  530.  
  531. CallByName 4 args
  532. CallByName(obj=7c09dc, method='Value', calltype=4 , comArgs=1)
  533. VTYPE_STRING: test-5-8 (iter=0)
  534.  
  535. CallByName 5 args
  536. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  537. FROM BYREF => VTYPE_LONG: 9 (iter=0)
  538. FROM BYREF => VTYPE_LONG: 5 (iter=1)
  539. VT_DISPATCH returned : return value from COM function was integer: 7c0124
  540.  
  541. CallByName 4 args
  542. CallByName(obj=7c0124, method='Value', calltype=4 , comArgs=1)
  543. VTYPE_STRING: test-5-9 (iter=0)
  544.  
  545. CallByName 5 args
  546. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  547. FROM BYREF => VTYPE_LONG: 10 (iter=0)
  548. FROM BYREF => VTYPE_LONG: 5 (iter=1)
  549. VT_DISPATCH returned : return value from COM function was integer: 7c09dc
  550.  
  551. CallByName 4 args
  552. CallByName(obj=7c09dc, method='Value', calltype=4 , comArgs=1)
  553. VTYPE_STRING: test-5-10 (iter=0)
  554.  
  555. CallByName 5 args
  556. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  557. FROM BYREF => VTYPE_LONG: 1 (iter=0)
  558. FROM BYREF => VTYPE_LONG: 6 (iter=1)
  559. VT_DISPATCH returned : return value from COM function was integer: 7c055c
  560.  
  561. CallByName 4 args
  562. CallByName(obj=7c055c, method='Value', calltype=4 , comArgs=1)
  563. VTYPE_STRING: test-6-1 (iter=0)
  564.  
  565. CallByName 5 args
  566. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  567. FROM BYREF => VTYPE_LONG: 2 (iter=0)
  568. FROM BYREF => VTYPE_LONG: 6 (iter=1)
  569. VT_DISPATCH returned : return value from COM function was integer: 7c067c
  570.  
  571. CallByName 4 args
  572. CallByName(obj=7c067c, method='Value', calltype=4 , comArgs=1)
  573. VTYPE_STRING: test-6-2 (iter=0)
  574.  
  575. CallByName 5 args
  576. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  577. FROM BYREF => VTYPE_LONG: 3 (iter=0)
  578. FROM BYREF => VTYPE_LONG: 6 (iter=1)
  579. VT_DISPATCH returned : return value from COM function was integer: 7c09dc
  580.  
  581. CallByName 4 args
  582. CallByName(obj=7c09dc, method='Value', calltype=4 , comArgs=1)
  583. VTYPE_STRING: test-6-3 (iter=0)
  584.  
  585. CallByName 5 args
  586. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  587. FROM BYREF => VTYPE_LONG: 4 (iter=0)
  588. FROM BYREF => VTYPE_LONG: 6 (iter=1)
  589. VT_DISPATCH returned : return value from COM function was integer: 7c09dc
  590.  
  591. CallByName 4 args
  592. CallByName(obj=7c09dc, method='Value', calltype=4 , comArgs=1)
  593. VTYPE_STRING: test-6-4 (iter=0)
  594.  
  595. CallByName 5 args
  596. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  597. FROM BYREF => VTYPE_LONG: 5 (iter=0)
  598. FROM BYREF => VTYPE_LONG: 6 (iter=1)
  599. VT_DISPATCH returned : return value from COM function was integer: 7c03ac
  600.  
  601. CallByName 4 args
  602. CallByName(obj=7c03ac, method='Value', calltype=4 , comArgs=1)
  603. VTYPE_STRING: test-6-5 (iter=0)
  604.  
  605. CallByName 5 args
  606. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  607. FROM BYREF => VTYPE_LONG: 6 (iter=0)
  608. FROM BYREF => VTYPE_LONG: 6 (iter=1)
  609. VT_DISPATCH returned : return value from COM function was integer: 7c0124
  610.  
  611. CallByName 4 args
  612. CallByName(obj=7c0124, method='Value', calltype=4 , comArgs=1)
  613. VTYPE_STRING: test-6-6 (iter=0)
  614.  
  615. CallByName 5 args
  616. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  617. FROM BYREF => VTYPE_LONG: 7 (iter=0)
  618. FROM BYREF => VTYPE_LONG: 6 (iter=1)
  619. VT_DISPATCH returned : return value from COM function was integer: 7c0634
  620.  
  621. CallByName 4 args
  622. CallByName(obj=7c0634, method='Value', calltype=4 , comArgs=1)
  623. VTYPE_STRING: test-6-7 (iter=0)
  624.  
  625. CallByName 5 args
  626. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  627. FROM BYREF => VTYPE_LONG: 8 (iter=0)
  628. FROM BYREF => VTYPE_LONG: 6 (iter=1)
  629. VT_DISPATCH returned : return value from COM function was integer: 7c0124
  630.  
  631. CallByName 4 args
  632. CallByName(obj=7c0124, method='Value', calltype=4 , comArgs=1)
  633. VTYPE_STRING: test-6-8 (iter=0)
  634.  
  635. CallByName 5 args
  636. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  637. FROM BYREF => VTYPE_LONG: 9 (iter=0)
  638. FROM BYREF => VTYPE_LONG: 6 (iter=1)
  639. VT_DISPATCH returned : return value from COM function was integer: 7c03ac
  640.  
  641. CallByName 4 args
  642. CallByName(obj=7c03ac, method='Value', calltype=4 , comArgs=1)
  643. VTYPE_STRING: test-6-9 (iter=0)
  644.  
  645. CallByName 5 args
  646. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  647. FROM BYREF => VTYPE_LONG: 10 (iter=0)
  648. FROM BYREF => VTYPE_LONG: 6 (iter=1)
  649. VT_DISPATCH returned : return value from COM function was integer: 7c09dc
  650.  
  651. CallByName 4 args
  652. CallByName(obj=7c09dc, method='Value', calltype=4 , comArgs=1)
  653. VTYPE_STRING: test-6-10 (iter=0)
  654.  
  655. CallByName 5 args
  656. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  657. FROM BYREF => VTYPE_LONG: 1 (iter=0)
  658. FROM BYREF => VTYPE_LONG: 7 (iter=1)
  659. VT_DISPATCH returned : return value from COM function was integer: 7c03ac
  660.  
  661. CallByName 4 args
  662. CallByName(obj=7c03ac, method='Value', calltype=4 , comArgs=1)
  663. VTYPE_STRING: test-7-1 (iter=0)
  664.  
  665. CallByName 5 args
  666. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  667. FROM BYREF => VTYPE_LONG: 2 (iter=0)
  668. FROM BYREF => VTYPE_LONG: 7 (iter=1)
  669. VT_DISPATCH returned : return value from COM function was integer: 7c09dc
  670.  
  671. CallByName 4 args
  672. CallByName(obj=7c09dc, method='Value', calltype=4 , comArgs=1)
  673. VTYPE_STRING: test-7-2 (iter=0)
  674.  
  675. CallByName 5 args
  676. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  677. FROM BYREF => VTYPE_LONG: 3 (iter=0)
  678. FROM BYREF => VTYPE_LONG: 7 (iter=1)
  679. VT_DISPATCH returned : return value from COM function was integer: 7c09dc
  680.  
  681. CallByName 4 args
  682. CallByName(obj=7c09dc, method='Value', calltype=4 , comArgs=1)
  683. VTYPE_STRING: test-7-3 (iter=0)
  684.  
  685. CallByName 5 args
  686. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  687. FROM BYREF => VTYPE_LONG: 4 (iter=0)
  688. FROM BYREF => VTYPE_LONG: 7 (iter=1)
  689. VT_DISPATCH returned : return value from COM function was integer: 7c0124
  690.  
  691. CallByName 4 args
  692. CallByName(obj=7c0124, method='Value', calltype=4 , comArgs=1)
  693. VTYPE_STRING: test-7-4 (iter=0)
  694.  
  695. CallByName 5 args
  696. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  697. FROM BYREF => VTYPE_LONG: 5 (iter=0)
  698. FROM BYREF => VTYPE_LONG: 7 (iter=1)
  699. VT_DISPATCH returned : return value from COM function was integer: 7c03ac
  700.  
  701. CallByName 4 args
  702. CallByName(obj=7c03ac, method='Value', calltype=4 , comArgs=1)
  703. VTYPE_STRING: test-7-5 (iter=0)
  704.  
  705. CallByName 5 args
  706. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  707. FROM BYREF => VTYPE_LONG: 6 (iter=0)
  708. FROM BYREF => VTYPE_LONG: 7 (iter=1)
  709. VT_DISPATCH returned : return value from COM function was integer: 7c043c
  710.  
  711. CallByName 4 args
  712. CallByName(obj=7c043c, method='Value', calltype=4 , comArgs=1)
  713. VTYPE_STRING: test-7-6 (iter=0)
  714.  
  715. CallByName 5 args
  716. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  717. FROM BYREF => VTYPE_LONG: 7 (iter=0)
  718. FROM BYREF => VTYPE_LONG: 7 (iter=1)
  719. VT_DISPATCH returned : return value from COM function was integer: 7c05a4
  720.  
  721. CallByName 4 args
  722. CallByName(obj=7c05a4, method='Value', calltype=4 , comArgs=1)
  723. VTYPE_STRING: test-7-7 (iter=0)
  724.  
  725. CallByName 5 args
  726. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  727. FROM BYREF => VTYPE_LONG: 8 (iter=0)
  728. FROM BYREF => VTYPE_LONG: 7 (iter=1)
  729. VT_DISPATCH returned : return value from COM function was integer: 7c05ec
  730.  
  731. CallByName 4 args
  732. CallByName(obj=7c05ec, method='Value', calltype=4 , comArgs=1)
  733. VTYPE_STRING: test-7-8 (iter=0)
  734.  
  735. CallByName 5 args
  736. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  737. FROM BYREF => VTYPE_LONG: 9 (iter=0)
  738. FROM BYREF => VTYPE_LONG: 7 (iter=1)
  739. VT_DISPATCH returned : return value from COM function was integer: 7c02d4
  740.  
  741. CallByName 4 args
  742. CallByName(obj=7c02d4, method='Value', calltype=4 , comArgs=1)
  743. VTYPE_STRING: test-7-9 (iter=0)
  744.  
  745. CallByName 5 args
  746. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  747. FROM BYREF => VTYPE_LONG: 10 (iter=0)
  748. FROM BYREF => VTYPE_LONG: 7 (iter=1)
  749. VT_DISPATCH returned : return value from COM function was integer: 7c09dc
  750.  
  751. CallByName 4 args
  752. CallByName(obj=7c09dc, method='Value', calltype=4 , comArgs=1)
  753. VTYPE_STRING: test-7-10 (iter=0)
  754.  
  755. CallByName 5 args
  756. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  757. FROM BYREF => VTYPE_LONG: 1 (iter=0)
  758. FROM BYREF => VTYPE_LONG: 8 (iter=1)
  759. VT_DISPATCH returned : return value from COM function was integer: 7c03ac
  760.  
  761. CallByName 4 args
  762. CallByName(obj=7c03ac, method='Value', calltype=4 , comArgs=1)
  763. VTYPE_STRING: test-8-1 (iter=0)
  764.  
  765. CallByName 5 args
  766. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  767. FROM BYREF => VTYPE_LONG: 2 (iter=0)
  768. FROM BYREF => VTYPE_LONG: 8 (iter=1)
  769. VT_DISPATCH returned : return value from COM function was integer: 7c04cc
  770.  
  771. CallByName 4 args
  772. CallByName(obj=7c04cc, method='Value', calltype=4 , comArgs=1)
  773. VTYPE_STRING: test-8-2 (iter=0)
  774.  
  775. CallByName 5 args
  776. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  777. FROM BYREF => VTYPE_LONG: 3 (iter=0)
  778. FROM BYREF => VTYPE_LONG: 8 (iter=1)
  779. VT_DISPATCH returned : return value from COM function was integer: 7c09dc
  780.  
  781. CallByName 4 args
  782. CallByName(obj=7c09dc, method='Value', calltype=4 , comArgs=1)
  783. VTYPE_STRING: test-8-3 (iter=0)
  784.  
  785. CallByName 5 args
  786. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  787. FROM BYREF => VTYPE_LONG: 4 (iter=0)
  788. FROM BYREF => VTYPE_LONG: 8 (iter=1)
  789. VT_DISPATCH returned : return value from COM function was integer: 7c0124
  790.  
  791. CallByName 4 args
  792. CallByName(obj=7c0124, method='Value', calltype=4 , comArgs=1)
  793. VTYPE_STRING: test-8-4 (iter=0)
  794.  
  795. CallByName 5 args
  796. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  797. FROM BYREF => VTYPE_LONG: 5 (iter=0)
  798. FROM BYREF => VTYPE_LONG: 8 (iter=1)
  799. VT_DISPATCH returned : return value from COM function was integer: 7c0124
  800.  
  801. CallByName 4 args
  802. CallByName(obj=7c0124, method='Value', calltype=4 , comArgs=1)
  803. VTYPE_STRING: test-8-5 (iter=0)
  804.  
  805. CallByName 5 args
  806. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  807. FROM BYREF => VTYPE_LONG: 6 (iter=0)
  808. FROM BYREF => VTYPE_LONG: 8 (iter=1)
  809. VT_DISPATCH returned : return value from COM function was integer: 7c09dc
  810.  
  811. CallByName 4 args
  812. CallByName(obj=7c09dc, method='Value', calltype=4 , comArgs=1)
  813. VTYPE_STRING: test-8-6 (iter=0)
  814.  
  815. CallByName 5 args
  816. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  817. FROM BYREF => VTYPE_LONG: 7 (iter=0)
  818. FROM BYREF => VTYPE_LONG: 8 (iter=1)
  819. VT_DISPATCH returned : return value from COM function was integer: 7c01fc
  820.  
  821. CallByName 4 args
  822. CallByName(obj=7c01fc, method='Value', calltype=4 , comArgs=1)
  823. VTYPE_STRING: test-8-7 (iter=0)
  824.  
  825. CallByName 5 args
  826. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  827. FROM BYREF => VTYPE_LONG: 8 (iter=0)
  828. FROM BYREF => VTYPE_LONG: 8 (iter=1)
  829. VT_DISPATCH returned : return value from COM function was integer: 7c0124
  830.  
  831. CallByName 4 args
  832. CallByName(obj=7c0124, method='Value', calltype=4 , comArgs=1)
  833. VTYPE_STRING: test-8-8 (iter=0)
  834.  
  835. CallByName 5 args
  836. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  837. FROM BYREF => VTYPE_LONG: 9 (iter=0)
  838. FROM BYREF => VTYPE_LONG: 8 (iter=1)
  839. VT_DISPATCH returned : return value from COM function was integer: 7c03ac
  840.  
  841. CallByName 4 args
  842. CallByName(obj=7c03ac, method='Value', calltype=4 , comArgs=1)
  843. VTYPE_STRING: test-8-9 (iter=0)
  844.  
  845. CallByName 5 args
  846. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  847. FROM BYREF => VTYPE_LONG: 10 (iter=0)
  848. FROM BYREF => VTYPE_LONG: 8 (iter=1)
  849. VT_DISPATCH returned : return value from COM function was integer: 7c043c
  850.  
  851. CallByName 4 args
  852. CallByName(obj=7c043c, method='Value', calltype=4 , comArgs=1)
  853. VTYPE_STRING: test-8-10 (iter=0)
  854.  
  855. CallByName 5 args
  856. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  857. FROM BYREF => VTYPE_LONG: 1 (iter=0)
  858. FROM BYREF => VTYPE_LONG: 9 (iter=1)
  859. VT_DISPATCH returned : return value from COM function was integer: 7c09dc
  860.  
  861. CallByName 4 args
  862. CallByName(obj=7c09dc, method='Value', calltype=4 , comArgs=1)
  863. VTYPE_STRING: test-9-1 (iter=0)
  864.  
  865. CallByName 5 args
  866. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  867. FROM BYREF => VTYPE_LONG: 2 (iter=0)
  868. FROM BYREF => VTYPE_LONG: 9 (iter=1)
  869. VT_DISPATCH returned : return value from COM function was integer: 7c05ec
  870.  
  871. CallByName 4 args
  872. CallByName(obj=7c05ec, method='Value', calltype=4 , comArgs=1)
  873. VTYPE_STRING: test-9-2 (iter=0)
  874.  
  875. CallByName 5 args
  876. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  877. FROM BYREF => VTYPE_LONG: 3 (iter=0)
  878. FROM BYREF => VTYPE_LONG: 9 (iter=1)
  879. VT_DISPATCH returned : return value from COM function was integer: 7c04cc
  880.  
  881. CallByName 4 args
  882. CallByName(obj=7c04cc, method='Value', calltype=4 , comArgs=1)
  883. VTYPE_STRING: test-9-3 (iter=0)
  884.  
  885. CallByName 5 args
  886. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  887. FROM BYREF => VTYPE_LONG: 4 (iter=0)
  888. FROM BYREF => VTYPE_LONG: 9 (iter=1)
  889. VT_DISPATCH returned : return value from COM function was integer: 7c09dc
  890.  
  891. CallByName 4 args
  892. CallByName(obj=7c09dc, method='Value', calltype=4 , comArgs=1)
  893. VTYPE_STRING: test-9-4 (iter=0)
  894.  
  895. CallByName 5 args
  896. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  897. FROM BYREF => VTYPE_LONG: 5 (iter=0)
  898. FROM BYREF => VTYPE_LONG: 9 (iter=1)
  899. VT_DISPATCH returned : return value from COM function was integer: 7c02d4
  900.  
  901. CallByName 4 args
  902. CallByName(obj=7c02d4, method='Value', calltype=4 , comArgs=1)
  903. VTYPE_STRING: test-9-5 (iter=0)
  904.  
  905. CallByName 5 args
  906. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  907. FROM BYREF => VTYPE_LONG: 6 (iter=0)
  908. FROM BYREF => VTYPE_LONG: 9 (iter=1)
  909. VT_DISPATCH returned : return value from COM function was integer: 7c043c
  910.  
  911. CallByName 4 args
  912. CallByName(obj=7c043c, method='Value', calltype=4 , comArgs=1)
  913. VTYPE_STRING: test-9-6 (iter=0)
  914.  
  915. CallByName 5 args
  916. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  917. FROM BYREF => VTYPE_LONG: 7 (iter=0)
  918. FROM BYREF => VTYPE_LONG: 9 (iter=1)
  919. VT_DISPATCH returned : return value from COM function was integer: 7c09dc
  920.  
  921. CallByName 4 args
  922. CallByName(obj=7c09dc, method='Value', calltype=4 , comArgs=1)
  923. VTYPE_STRING: test-9-7 (iter=0)
  924.  
  925. CallByName 5 args
  926. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  927. FROM BYREF => VTYPE_LONG: 8 (iter=0)
  928. FROM BYREF => VTYPE_LONG: 9 (iter=1)
  929. VT_DISPATCH returned : return value from COM function was integer: 7c070c
  930.  
  931. CallByName 4 args
  932. CallByName(obj=7c070c, method='Value', calltype=4 , comArgs=1)
  933. VTYPE_STRING: test-9-8 (iter=0)
  934.  
  935. CallByName 5 args
  936. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  937. FROM BYREF => VTYPE_LONG: 9 (iter=0)
  938. FROM BYREF => VTYPE_LONG: 9 (iter=1)
  939. VT_DISPATCH returned : return value from COM function was integer: 7c070c
  940.  
  941. CallByName 4 args
  942. CallByName(obj=7c070c, method='Value', calltype=4 , comArgs=1)
  943. VTYPE_STRING: test-9-9 (iter=0)
  944.  
  945. CallByName 5 args
  946. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  947. FROM BYREF => VTYPE_LONG: 10 (iter=0)
  948. FROM BYREF => VTYPE_LONG: 9 (iter=1)
  949. VT_DISPATCH returned : return value from COM function was integer: 7c0244
  950.  
  951. CallByName 4 args
  952. CallByName(obj=7c0244, method='Value', calltype=4 , comArgs=1)
  953. VTYPE_STRING: test-9-10 (iter=0)
  954.  
  955. CallByName 5 args
  956. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  957. FROM BYREF => VTYPE_LONG: 1 (iter=0)
  958. FROM BYREF => VTYPE_LONG: 10 (iter=1)
  959. VT_DISPATCH returned : return value from COM function was integer: 7c0124
  960.  
  961. CallByName 4 args
  962. CallByName(obj=7c0124, method='Value', calltype=4 , comArgs=1)
  963. VTYPE_STRING: test-10-1 (iter=0)
  964.  
  965. CallByName 5 args
  966. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  967. FROM BYREF => VTYPE_LONG: 2 (iter=0)
  968. FROM BYREF => VTYPE_LONG: 10 (iter=1)
  969. VT_DISPATCH returned : return value from COM function was integer: 7c070c
  970.  
  971. CallByName 4 args
  972. CallByName(obj=7c070c, method='Value', calltype=4 , comArgs=1)
  973. VTYPE_STRING: test-10-2 (iter=0)
  974.  
  975. CallByName 5 args
  976. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  977. FROM BYREF => VTYPE_LONG: 3 (iter=0)
  978. FROM BYREF => VTYPE_LONG: 10 (iter=1)
  979. VT_DISPATCH returned : return value from COM function was integer: 7c09dc
  980.  
  981. CallByName 4 args
  982. CallByName(obj=7c09dc, method='Value', calltype=4 , comArgs=1)
  983. VTYPE_STRING: test-10-3 (iter=0)
  984.  
  985. CallByName 5 args
  986. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  987. FROM BYREF => VTYPE_LONG: 4 (iter=0)
  988. FROM BYREF => VTYPE_LONG: 10 (iter=1)
  989. VT_DISPATCH returned : return value from COM function was integer: 7c043c
  990.  
  991. CallByName 4 args
  992. CallByName(obj=7c043c, method='Value', calltype=4 , comArgs=1)
  993. VTYPE_STRING: test-10-4 (iter=0)
  994.  
  995. CallByName 5 args
  996. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  997. FROM BYREF => VTYPE_LONG: 5 (iter=0)
  998. FROM BYREF => VTYPE_LONG: 10 (iter=1)
  999. VT_DISPATCH returned : return value from COM function was integer: 7c01fc
  1000.  
  1001. CallByName 4 args
  1002. CallByName(obj=7c01fc, method='Value', calltype=4 , comArgs=1)
  1003. VTYPE_STRING: test-10-5 (iter=0)
  1004.  
  1005. CallByName 5 args
  1006. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  1007. FROM BYREF => VTYPE_LONG: 6 (iter=0)
  1008. FROM BYREF => VTYPE_LONG: 10 (iter=1)
  1009. VT_DISPATCH returned : return value from COM function was integer: 7c09dc
  1010.  
  1011. CallByName 4 args
  1012. CallByName(obj=7c09dc, method='Value', calltype=4 , comArgs=1)
  1013. VTYPE_STRING: test-10-6 (iter=0)
  1014.  
  1015. CallByName 5 args
  1016. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  1017. FROM BYREF => VTYPE_LONG: 7 (iter=0)
  1018. FROM BYREF => VTYPE_LONG: 10 (iter=1)
  1019. VT_DISPATCH returned : return value from COM function was integer: 7c0124
  1020.  
  1021. CallByName 4 args
  1022. CallByName(obj=7c0124, method='Value', calltype=4 , comArgs=1)
  1023. VTYPE_STRING: test-10-7 (iter=0)
  1024.  
  1025. CallByName 5 args
  1026. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  1027. FROM BYREF => VTYPE_LONG: 8 (iter=0)
  1028. FROM BYREF => VTYPE_LONG: 10 (iter=1)
  1029. VT_DISPATCH returned : return value from COM function was integer: 7c05a4
  1030.  
  1031. CallByName 4 args
  1032. CallByName(obj=7c05a4, method='Value', calltype=4 , comArgs=1)
  1033. VTYPE_STRING: test-10-8 (iter=0)
  1034.  
  1035. CallByName 5 args
  1036. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  1037. FROM BYREF => VTYPE_LONG: 9 (iter=0)
  1038. FROM BYREF => VTYPE_LONG: 10 (iter=1)
  1039. VT_DISPATCH returned : return value from COM function was integer: 7c0124
  1040.  
  1041. CallByName 4 args
  1042. CallByName(obj=7c0124, method='Value', calltype=4 , comArgs=1)
  1043. VTYPE_STRING: test-10-9 (iter=0)
  1044.  
  1045. CallByName 5 args
  1046. CallByName(obj=7c028c, method='Cells', calltype=2 , comArgs=2)
  1047. FROM BYREF => VTYPE_LONG: 10 (iter=0)
  1048. FROM BYREF => VTYPE_LONG: 10 (iter=1)
  1049. VT_DISPATCH returned : return value from COM function was integer: 7c03ac
  1050.  
  1051. CallByName 4 args
  1052. CallByName(obj=7c03ac, method='Value', calltype=4 , comArgs=1)
  1053. VTYPE_STRING: test-10-10 (iter=0)
  1054.  
  1055. CallByName 4 args
  1056. CallByName(obj=7c0994, method='SaveAs', calltype=1 , comArgs=1)
  1057. FROM BYREF => VTYPE_STRING: C:\ScriptBASIC\examples\warehouse.xls (iter=0)
  1058. VT_BOOL to VT_UI8 returned : return value from COM function was integer: 65535
  1059.  
  1060. CallByName 2 args
  1061. CallByName(obj=7c0994, method='Close', calltype=1 , comArgs=0)
  1062. VT_BOOL to VT_UI8 returned : return value from COM function was integer: 65535
  1063.  
  1064. CallByName 2 args
  1065. CallByName(obj=7c01b4, method='Quit', calltype=1 , comArgs=0)
  1066. VT_EMPTY returned : return value from COM function was empty
  1067. Spreadsheet Created.
  1068.  
  1069. C:\ScriptBASIC\examples>
  1070.  

Brian Alvarez

  • Hero Member
  • *****
  • Posts: 699
    • PluriBASIC
Re: COM OLE
« Reply #62 on: March 24, 2021, 04:26:14 pm »
 You guys have been busy.  ;D

 I will try to catch up with the new features once I have some spare time. :)

John

  • Hero Member
  • *****
  • Posts: 3966
Re: COM OLE
« Reply #63 on: March 24, 2021, 06:11:06 pm »
I wish Jose Roca was still interested in COM and O2. He never liked OLE automation much and preferred low level COM.

Charles Pegge

  • Admin Support Member
  • *****
  • Posts: 4486
    • Oxygen Basic
Re: COM OLE
« Reply #64 on: April 04, 2021, 12:49:23 pm »
Hi John,

I can get most of your Excel example  working but problems with "Cells" and "Pattern". Could you show me your latest Excel in ScriptBasic form.

I'm also looking for an intelligible reference for this stuff.

John

  • Hero Member
  • *****
  • Posts: 3966
Re: COM OLE
« Reply #65 on: April 04, 2021, 01:00:43 pm »
Here is the post to my latest (simplified) Excel example in O2 and SB using the sbembed.sbi include.

https://www.oxygenbasic.org/forum/index.php?topic=2060.msg22323#msg22323

sbembed.sbi
Code: Script BASIC
  1. ' sbembed.sbi - ScriptBasic Embedded Function Wrappers
  2.  
  3. DECLARE COMMAND ArrayToXML ALIAS "xmlserialize" LIB "t"
  4. DECLARE SUB CREATE ALIAS "CreateObject" LIB "com"
  5. DECLARE SUB CBN ALIAS "CallByName" LIB "com"
  6. DECLARE SUB RELEASE ALIAS "ReleaseObject" LIB "com"
  7.  
  8. GLOBAL CONST sb_call = 1
  9. GLOBAL CONST sb_get  = 2
  10. GLOBAL CONST sb_let  = 4
  11. GLOBAL CONST sb_set  = 8
  12.  
  13. ' REPLACE
  14. FUNCTION sb_replace(basestr, searchstr, replacestr, occurances, startpos)
  15.   sb_replace = REPLACE(basestr, searchstr, replacestr, occurances, startpos)
  16. END FUNCTION
  17.  
  18. ' LIKE
  19. FUNCTION sb_like(basestr, mask)
  20.   ok = basestr LIKE mask
  21.   sb_like = ok
  22. END FUNCTION
  23.  
  24. ' MATCH
  25. FUNCTION sb_match(segment)
  26.   sb_match = JOKER(segment)
  27. END FUNCTION
  28.  
  29. ' SPLITA
  30. FUNCTION sb_splita(basestr, splitby)
  31.   SPLITA basestr BY splitby TO splitarray
  32.   sb_splita = ArrayToXML(splitarray)
  33. END FUNCTION
  34.  
  35. ' COM - CREATE
  36. FUNCTION sb_create(obj_name)
  37.   obj = CREATE(8, obj_name)
  38.   sb_create = obj
  39. END FUNCTION
  40.  
  41. ' COM - CBN (CallByName)
  42. FUNCTION sb_cbn(obj, funcname, callypye, arg1, arg2, arg3, arg4)
  43.   IF arg1 = undef THEN
  44.     sb_cbn = CBN(obj, funcname, callypye)
  45.     GOTO Done
  46.   ELSE IF arg2 = undef THEN
  47.     sb_cbn = CBN(obj, funcname, callypye, arg1)
  48.     GOTO Done
  49.   ELSE IF arg3 = undef THEN
  50.     sb_cbn = CBN(obj, funcname, callypye, arg1, arg2)
  51.     GOTO Done
  52.   ELSE IF arg4 = undef THEN
  53.     sb_cbn = CBN(obj, funcname, callypye, arg1, arg2, arg3)
  54.     GOTO Done
  55.   ELSE IF arg4 <> undef THEN
  56.     sb_cbn = CBN(obj, funcname, callypye, arg1, arg2, arg3, arg4)
  57.   END IF
  58.   Done:
  59. END FUNCTION
  60.  
  61. ' COM - RELEASE
  62. FUNCTION sb_release(obj)
  63.   ok = RELEASE(obj)
  64.   sb_release = ok
  65. END FUNCTION
  66.  

Here is my sbembed.inc for o2.

Code: OxygenBasic
  1. ' ScriptBasic Embedding Include
  2.  
  3. % libScriba = "libScriba.dll"
  4.  
  5. int SBT_UNDEF  = 0
  6. int SBT_DOUBLE = 1
  7. int SBT_LONG   = 2
  8. int SBT_STRING = 3
  9. int SBT_ZCHAR  = 4
  10.  
  11. type SbData
  12.   typ as dword
  13.   siz as dword
  14.   union {
  15.     dbl as double
  16.     lng as sys
  17.     str as char*
  18.     gen as sys
  19.   }
  20. end type
  21.  
  22. sys sb = LoadLibrary libScriba
  23. extern cdecl
  24.   bind sb
  25.   {
  26.   scriba_new
  27.   scriba_LoadConfiguration
  28.   scriba_SetFileName
  29.   scriba_LoadSourceProgram
  30.   scriba_LoadProgramString
  31.   scriba_LoadBinaryProgram
  32.   scriba_Run
  33.   scriba_NoRun
  34.   scriba_LookupVariableByName
  35.   scriba_LookupFunctionByName
  36.   scriba_GetVariable
  37.   scriba_SetVariable
  38.   scriba_NewSbArgs
  39.   scriba_CallArgEx
  40.   scriba_DestroySbArgs
  41.   scriba_destroy
  42.   }
  43. end extern
  44.  
  45. function newmem cdecl (sys le) as sys, export
  46.   return getmemory le
  47. end function
  48.  
  49. function freemem cdecl (sys p) export
  50.   freememory p
  51. end function
  52.  

The best way to get COM/OLE automation examples is search for VBScript related code. It's rather simple to translate.



Jose Roca's Typelib viewer is another excellent resource.
« Last Edit: April 04, 2021, 01:19:44 pm by John »

John

  • Hero Member
  • *****
  • Posts: 3966
Re: COM OLE
« Reply #66 on: April 04, 2021, 03:30:05 pm »
This is the ScriptBasic COM::DI(oscript) output for the Sage BOI COM/OLE interface.

Code: Text
  1.  
  2. ProvideX.Script Object Reference
  3.  
  4. Interface: IScript
  5. ProgID: ProvideX.Script.1
  6. CLSID: {60503AB4-2D27-11D6-B249-00C04F50D575}
  7. Version: 1.0
  8. Get Instance() As String
  9. Sub Init(Path As String, [Param As Variant])
  10. Get State() As ScriptState
  11. Sub Execute(CmdLine As String)
  12. Function Evaluate(Expression As String) As Variant
  13. Sub Run(ProgramName As String)
  14. Get Parameter(Name As String) As Variant
  15. Let Parameter(Name As String, Variant)
  16. Function NewObject(ClassName As String, [Param1 As Variant], [Param2 As Variant], [Param3 As Variant], [Param4 As Variant], [Param5 As Variant], [Param6 As Variant], [Param7 As Variant], [Param8 As Variant], [Param9 As Variant], [Param10 As Variant], [Param11 As Variant], [Param12 As Variant], [Param13 As Variant], [Param14 As Variant], [Param15 As Variant], [Param16 As Variant], [Param17 As Variant], [Param18 As Variant], [Param19 As Variant]) As Object
  17. Sub Reset()
  18. Function AddNamedObject(Name As String, Obj As Object) As Boolean
  19. Function DeleteNamedObject(Name As String) As Boolean
  20. Get TraceOn() As Boolean
  21. Let TraceOn(Boolean)
  22. Get Trace() As Boolean
  23. Let Trace(Boolean)
  24. Sub SetCommandLine(CommandLine As String)
  25.  

This example executes a ProvideX Business Basic statement via a COM call to the interface.

Code: Script BASIC
  1. IMPORT com.sbi
  2.  
  3. oscript = COM::CREATE(:SET, "ProvideX.Script")
  4. COM::CBN(oScript, "Init", :CALL, "C:\\Sage\\Sage 100 Standard\\MAS90\\HOME")
  5. COM::CBN(oscript, "EXECUTE", :CALL, "MSGBOX \"Hello ScriptBasic\",\"Sage BOI\",\"?,YESNO\",X$")
  6.  
  7. COM::RELEASE(oScript)
  8.  
« Last Edit: April 04, 2021, 04:03:22 pm by John »

John

  • Hero Member
  • *****
  • Posts: 3966
Re: COM OLE
« Reply #67 on: April 04, 2021, 08:48:39 pm »
This is the COM::DI() output for the Excel objects of interest. For me it helps with CallTypes to use.

Microsoft Excel VBA Documentations

Code: Visual Basic
  1. *** oExcelApp ***
  2.  
  3. Interface: _Application
  4. ProgID: Excel.Application.16
  5. CLSID: {00024500-0000-0000-C000-000000000046}
  6. Get Application() As Object
  7. Get Creator() As XlCreator
  8. Get Parent() As Object
  9. Get ActiveCell() As Object
  10. Get ActiveChart() As Object
  11. Get ActivePrinter() As String
  12. Let ActivePrinter(String)
  13. Get ActiveSheet() As Object
  14. Get ActiveWindow() As Object
  15. Get ActiveWorkbook() As Object
  16. Sub Calculate()
  17. Get Cells() As Object
  18. Get Charts() As Object
  19. Get CommandBars() As Object
  20. Get DDEAppReturnCode() As Long
  21. Sub DDEExecute(Channel As Long, String As String)
  22. Function DDEInitiate(App As String, Topic As String) As Long
  23. Sub DDEPoke(Channel As Long, Item As Variant, Data As Variant)
  24. Function DDERequest(Channel As Long, Item As String) As Variant
  25. Sub DDETerminate(Channel As Long)
  26. Function Evaluate(Name As Variant) As Variant
  27. Function ExecuteExcel4Macro(String As String) As Variant
  28. Function Intersect(Arg1 As Object, Arg2 As Object, [Arg3 As Variant], [Arg4 As Variant], [Arg5 As Variant], [Arg6 As Variant], [Arg7 As Variant], [Arg8 As Variant], [Arg9 As Variant], [Arg10 As Variant], [Arg11 As Variant], [Arg12 As Variant], [Arg13 As Variant], [Arg14 As Variant], [Arg15 As Variant], [Arg16 As Variant], [Arg17 As Variant], [Arg18 As Variant], [Arg19 As Variant], [Arg20 As Variant], [Arg21 As Variant], [Arg22 As Variant], [Arg23 As Variant], [Arg24 As Variant], [Arg25 As Variant], [Arg26 As Variant], [Arg27 As Variant], [Arg28 As Variant], [Arg29 As Variant], [Arg30 As Variant]) As Object
  29. Get Names() As Object
  30. Get Range(Cell1 As Variant, [Cell2 As Variant]) As Object
  31. Function Run([Macro As Variant], [Arg1 As Variant], [Arg2 As Variant], [Arg3 As Variant], [Arg4 As Variant], [Arg5 As Variant], [Arg6 As Variant], [Arg7 As Variant], [Arg8 As Variant], [Arg9 As Variant], [Arg10 As Variant], [Arg11 As Variant], [Arg12 As Variant], [Arg13 As Variant], [Arg14 As Variant], [Arg15 As Variant], [Arg16 As Variant], [Arg17 As Variant], [Arg18 As Variant], [Arg19 As Variant], [Arg20 As Variant], [Arg21 As Variant], [Arg22 As Variant], [Arg23 As Variant], [Arg24 As Variant], [Arg25 As Variant], [Arg26 As Variant], [Arg27 As Variant], [Arg28 As Variant], [Arg29 As Variant], [Arg30 As Variant]) As Variant
  32. Get Selection() As Object
  33. Sub SendKeys(Keys As Variant, [Wait As Variant])
  34. Get Sheets() As Object
  35. Get ThisWorkbook() As Object
  36. Function Union(Arg1 As Object, Arg2 As Object, [Arg3 As Variant], [Arg4 As Variant], [Arg5 As Variant], [Arg6 As Variant], [Arg7 As Variant], [Arg8 As Variant], [Arg9 As Variant], [Arg10 As Variant], [Arg11 As Variant], [Arg12 As Variant], [Arg13 As Variant], [Arg14 As Variant], [Arg15 As Variant], [Arg16 As Variant], [Arg17 As Variant], [Arg18 As Variant], [Arg19 As Variant], [Arg20 As Variant], [Arg21 As Variant], [Arg22 As Variant], [Arg23 As Variant], [Arg24 As Variant], [Arg25 As Variant], [Arg26 As Variant], [Arg27 As Variant], [Arg28 As Variant], [Arg29 As Variant], [Arg30 As Variant]) As Object
  37. Get Windows() As Object
  38. Get Workbooks() As Object
  39. Get WorksheetFunction() As Object
  40. Get Worksheets() As Object
  41. Get Excel4IntlMacroSheets() As Object
  42. Get Excel4MacroSheets() As Object
  43. Sub ActivateMicrosoftApp(Index As XlMSApplication)
  44. Sub AddCustomList(ListArray As Variant, [ByRow As Variant])
  45. Get AlertBeforeOverwriting() As Boolean
  46. Let AlertBeforeOverwriting(Boolean)
  47. Get AltStartupPath() As String
  48. Let AltStartupPath(String)
  49. Get AskToUpdateLinks() As Boolean
  50. Let AskToUpdateLinks(Boolean)
  51. Get EnableAnimations() As Boolean
  52. Let EnableAnimations(Boolean)
  53. Get AutoCorrect() As Object
  54. Get Build() As Long
  55. Get CalculateBeforeSave() As Boolean
  56. Let CalculateBeforeSave(Boolean)
  57. Get Calculation() As XlCalculation
  58. Let Calculation(XlCalculation)
  59. Get Caller([Index As Variant]) As Variant
  60. Get CanPlaySounds() As Boolean
  61. Get CanRecordSounds() As Boolean
  62. Get Caption() As String
  63. Let Caption(String)
  64. Get CellDragAndDrop() As Boolean
  65. Let CellDragAndDrop(Boolean)
  66. Function CentimetersToPoints(Centimeters As Currency) As Currency
  67. Function CheckSpelling(Word As String, [CustomDictionary As Variant], [IgnoreUppercase As Variant]) As Boolean
  68. Get ClipboardFormats([Index As Variant]) As Variant
  69. Get DisplayClipboardWindow() As Boolean
  70. Let DisplayClipboardWindow(Boolean)
  71. Get CommandUnderlines() As XlCommandUnderlines
  72. Let CommandUnderlines(XlCommandUnderlines)
  73. Get ConstrainNumeric() As Boolean
  74. Let ConstrainNumeric(Boolean)
  75. Function ConvertFormula(Formula As Variant, FromReferenceStyle As XlReferenceStyle, [ToReferenceStyle As Variant], [ToAbsolute As Variant], [RelativeTo As Variant]) As Variant
  76. Get CopyObjectsWithCells() As Boolean
  77. Let CopyObjectsWithCells(Boolean)
  78. Get Cursor() As XlMousePointer
  79. Let Cursor(XlMousePointer)
  80. Get CustomListCount() As Long
  81. Get CutCopyMode() As XlCutCopyMode
  82. Let CutCopyMode(XlCutCopyMode)
  83. Get DataEntryMode() As Long
  84. Let DataEntryMode(Long)
  85. Get DefaultFilePath() As String
  86. Let DefaultFilePath(String)
  87. Sub DeleteCustomList(ListNum As Long)
  88. Get Dialogs() As Object
  89. Get DisplayAlerts() As Boolean
  90. Let DisplayAlerts(Boolean)
  91. Get DisplayFormulaBar() As Boolean
  92. Let DisplayFormulaBar(Boolean)
  93. Get DisplayFullScreen() As Boolean
  94. Let DisplayFullScreen(Boolean)
  95. Get DisplayNoteIndicator() As Boolean
  96. Let DisplayNoteIndicator(Boolean)
  97. Get DisplayCommentIndicator() As XlCommentDisplayMode
  98. Let DisplayCommentIndicator(XlCommentDisplayMode)
  99. Get DisplayExcel4Menus() As Boolean
  100. Let DisplayExcel4Menus(Boolean)
  101. Get DisplayRecentFiles() As Boolean
  102. Let DisplayRecentFiles(Boolean)
  103. Get DisplayScrollBars() As Boolean
  104. Let DisplayScrollBars(Boolean)
  105. Get DisplayStatusBar() As Boolean
  106. Let DisplayStatusBar(Boolean)
  107. Sub DoubleClick()
  108. Get EditDirectlyInCell() As Boolean
  109. Let EditDirectlyInCell(Boolean)
  110. Get EnableAutoComplete() As Boolean
  111. Let EnableAutoComplete(Boolean)
  112. Get EnableCancelKey() As XlEnableCancelKey
  113. Let EnableCancelKey(XlEnableCancelKey)
  114. Get EnableSound() As Boolean
  115. Let EnableSound(Boolean)
  116. Get FileConverters([Index1 As Variant], [Index2 As Variant]) As Variant
  117. Get FixedDecimal() As Boolean
  118. Let FixedDecimal(Boolean)
  119. Get FixedDecimalPlaces() As Long
  120. Let FixedDecimalPlaces(Long)
  121. Function GetCustomListContents(ListNum As Long) As Variant
  122. Function GetCustomListNum(ListArray As Variant) As Long
  123. Function GetOpenFilename([FileFilter As Variant], [FilterIndex As Variant], [Title As Variant], [ButtonText As Variant], [MultiSelect As Variant]) As Variant
  124. Function GetSaveAsFilename([InitialFilename As Variant], [FileFilter As Variant], [FilterIndex As Variant], [Title As Variant], [ButtonText As Variant]) As Variant
  125. Sub Goto([Reference As Variant], [Scroll As Variant])
  126. Get Height() As Currency
  127. Let Height(Currency)
  128. Sub Help([HelpFile As Variant], [HelpContextID As Variant])
  129. Get IgnoreRemoteRequests() As Boolean
  130. Let IgnoreRemoteRequests(Boolean)
  131. Function InchesToPoints(Inches As Currency) As Currency
  132. Function InputBox(Prompt As String, [Title As Variant], [Default As Variant], [Left As Variant], [Top As Variant], [HelpFile As Variant], [HelpContextID As Variant], [Type As Variant]) As Variant
  133. Get Interactive() As Boolean
  134. Let Interactive(Boolean)
  135. Get International([Index As Variant]) As Variant
  136. Get Iteration() As Boolean
  137. Let Iteration(Boolean)
  138. Get Left() As Currency
  139. Let Left(Currency)
  140. Get LibraryPath() As String
  141. Sub MailLogoff()
  142. Sub MailLogon([Name As Variant], [Password As Variant], [DownloadNewMail As Variant])
  143. Get MailSession() As Variant
  144. Get MailSystem() As XlMailSystem
  145. Get MathCoprocessorAvailable() As Boolean
  146. Get MaxChange() As Currency
  147. Let MaxChange(Currency)
  148. Get MaxIterations() As Long
  149. Let MaxIterations(Long)
  150. Get MouseAvailable() As Boolean
  151. Get MoveAfterReturn() As Boolean
  152. Let MoveAfterReturn(Boolean)
  153. Get MoveAfterReturnDirection() As XlDirection
  154. Let MoveAfterReturnDirection(XlDirection)
  155. Get RecentFiles() As Object
  156. Get Name() As String
  157. Function NextLetter() As Object
  158. Get NetworkTemplatesPath() As String
  159. Get ODBCErrors() As Object
  160. Get ODBCTimeout() As Long
  161. Let ODBCTimeout(Long)
  162. Sub OnKey(Key As String, [Procedure As Variant])
  163. Sub OnRepeat(Text As String, Procedure As String)
  164. Sub OnTime(EarliestTime As Variant, Procedure As String, [LatestTime As Variant], [Schedule As Variant])
  165. Sub OnUndo(Text As String, Procedure As String)
  166. Get OnWindow() As String
  167. Let OnWindow(String)
  168. Get OperatingSystem() As String
  169. Get OrganizationName() As String
  170. Get Path() As String
  171. Get PathSeparator() As String
  172. Get PreviousSelections([Index As Variant]) As Variant
  173. Get PivotTableSelection() As Boolean
  174. Let PivotTableSelection(Boolean)
  175. Get PromptForSummaryInfo() As Boolean
  176. Let PromptForSummaryInfo(Boolean)
  177. Sub Quit()
  178. Sub RecordMacro([BasicCode As Variant], [XlmCode As Variant])
  179. Get RecordRelative() As Boolean
  180. Get ReferenceStyle() As XlReferenceStyle
  181. Let ReferenceStyle(XlReferenceStyle)
  182. Get RegisteredFunctions([Index1 As Variant], [Index2 As Variant]) As Variant
  183. Function RegisterXLL(Filename As String) As Boolean
  184. Sub Repeat()
  185. Get RollZoom() As Boolean
  186. Let RollZoom(Boolean)
  187. Get ScreenUpdating() As Boolean
  188. Let ScreenUpdating(Boolean)
  189. Get SheetsInNewWorkbook() As Long
  190. Let SheetsInNewWorkbook(Long)
  191. Get ShowChartTipNames() As Boolean
  192. Let ShowChartTipNames(Boolean)
  193. Get ShowChartTipValues() As Boolean
  194. Let ShowChartTipValues(Boolean)
  195. Get StandardFont() As String
  196. Let StandardFont(String)
  197. Get StandardFontSize() As Currency
  198. Let StandardFontSize(Currency)
  199. Get StartupPath() As String
  200. Get StatusBar() As Variant
  201. Let StatusBar(Variant)
  202. Get TemplatesPath() As String
  203. Get ShowToolTips() As Boolean
  204. Let ShowToolTips(Boolean)
  205. Get Top() As Currency
  206. Let Top(Currency)
  207. Get DefaultSaveFormat() As XlFileFormat
  208. Let DefaultSaveFormat(XlFileFormat)
  209. Get TransitionMenuKey() As String
  210. Let TransitionMenuKey(String)
  211. Get TransitionMenuKeyAction() As Long
  212. Let TransitionMenuKeyAction(Long)
  213. Get TransitionNavigKeys() As Boolean
  214. Let TransitionNavigKeys(Boolean)
  215. Sub Undo()
  216. Get UsableHeight() As Currency
  217. Get UsableWidth() As Currency
  218. Get UserControl() As Boolean
  219. Let UserControl(Boolean)
  220. Get UserName() As String
  221. Let UserName(String)
  222. Get Value() As String
  223. Get VBE() As Object
  224. Get Version() As String
  225. Get Visible() As Boolean
  226. Let Visible(Boolean)
  227. Sub Volatile([Volatile As Variant])
  228. Get Width() As Currency
  229. Let Width(Currency)
  230. Get WindowsForPens() As Boolean
  231. Get WindowState() As XlWindowState
  232. Let WindowState(XlWindowState)
  233. Get DefaultSheetDirection() As Long
  234. Let DefaultSheetDirection(Long)
  235. Get CursorMovement() As Long
  236. Let CursorMovement(Long)
  237. Get ControlCharacters() As Boolean
  238. Let ControlCharacters(Boolean)
  239. Get EnableEvents() As Boolean
  240. Let EnableEvents(Boolean)
  241. Function Wait(Time As Variant) As Boolean
  242. Get ExtendList() As Boolean
  243. Let ExtendList(Boolean)
  244. Get OLEDBErrors() As Object
  245. Function GetPhonetic([Text As Variant]) As String
  246. Get COMAddIns() As Object
  247. Get DefaultWebOptions() As Object
  248. Get ProductCode() As String
  249. Get UserLibraryPath() As String
  250. Get AutoPercentEntry() As Boolean
  251. Let AutoPercentEntry(Boolean)
  252. Get LanguageSettings() As Object
  253. Sub CalculateFull()
  254. Function FindFile() As Boolean
  255. Get CalculationVersion() As Long
  256. Get FeatureInstall() As MsoFeatureInstall
  257. Let FeatureInstall(MsoFeatureInstall)
  258. Get Ready() As Boolean
  259. Get FindFormat() As Object
  260. Set FindFormat(Object)
  261. Get ReplaceFormat() As Object
  262. Set ReplaceFormat(Object)
  263. Get UsedObjects() As Object
  264. Get CalculationState() As XlCalculationState
  265. Get CalculationInterruptKey() As XlCalculationInterruptKey
  266. Let CalculationInterruptKey(XlCalculationInterruptKey)
  267. Get Watches() As Object
  268. Get DisplayFunctionToolTips() As Boolean
  269. Let DisplayFunctionToolTips(Boolean)
  270. Get AutomationSecurity() As MsoAutomationSecurity
  271. Let AutomationSecurity(MsoAutomationSecurity)
  272. Get FileDialog(fileDialogType As MsoFileDialogType) As Object
  273. Sub CalculateFullRebuild()
  274. Get DisplayPasteOptions() As Boolean
  275. Let DisplayPasteOptions(Boolean)
  276. Get DisplayInsertOptions() As Boolean
  277. Let DisplayInsertOptions(Boolean)
  278. Get GenerateGetPivotData() As Boolean
  279. Let GenerateGetPivotData(Boolean)
  280. Get AutoRecover() As Object
  281. Get Hwnd() As Long
  282. Get Hinstance() As Long
  283. Sub CheckAbort([KeepAbort As Variant])
  284. Get ErrorCheckingOptions() As Object
  285. Get AutoFormatAsYouTypeReplaceHyperlinks() As Boolean
  286. Let AutoFormatAsYouTypeReplaceHyperlinks(Boolean)
  287. Get NewWorkbook() As Object
  288. Get SpellingOptions() As Object
  289. Get Speech() As Object
  290. Get MapPaperSize() As Boolean
  291. Let MapPaperSize(Boolean)
  292. Get ShowStartupDialog() As Boolean
  293. Let ShowStartupDialog(Boolean)
  294. Get DecimalSeparator() As String
  295. Let DecimalSeparator(String)
  296. Get ThousandsSeparator() As String
  297. Let ThousandsSeparator(String)
  298. Get UseSystemSeparators() As Boolean
  299. Let UseSystemSeparators(Boolean)
  300. Get ThisCell() As Object
  301. Get RTD() As Object
  302. Get DisplayDocumentActionTaskPane() As Boolean
  303. Let DisplayDocumentActionTaskPane(Boolean)
  304. Sub DisplayXMLSourcePane([XmlMap As Variant])
  305. Get ArbitraryXMLSupportAvailable() As Boolean
  306. Get MeasurementUnit() As Long
  307. Let MeasurementUnit(Long)
  308. Get ShowSelectionFloaties() As Boolean
  309. Let ShowSelectionFloaties(Boolean)
  310. Get ShowMenuFloaties() As Boolean
  311. Let ShowMenuFloaties(Boolean)
  312. Get ShowDevTools() As Boolean
  313. Let ShowDevTools(Boolean)
  314. Get EnableLivePreview() As Boolean
  315. Let EnableLivePreview(Boolean)
  316. Get DisplayDocumentInformationPanel() As Boolean
  317. Let DisplayDocumentInformationPanel(Boolean)
  318. Get AlwaysUseClearType() As Boolean
  319. Let AlwaysUseClearType(Boolean)
  320. Get WarnOnFunctionNameConflict() As Boolean
  321. Let WarnOnFunctionNameConflict(Boolean)
  322. Get FormulaBarHeight() As Long
  323. Let FormulaBarHeight(Long)
  324. Get DisplayFormulaAutoComplete() As Boolean
  325. Let DisplayFormulaAutoComplete(Boolean)
  326. Get GenerateTableRefs() As XlGenerateTableRefs
  327. Let GenerateTableRefs(XlGenerateTableRefs)
  328. Get Assistance() As Object
  329. Sub CalculateUntilAsyncQueriesDone()
  330. Get EnableLargeOperationAlert() As Boolean
  331. Let EnableLargeOperationAlert(Boolean)
  332. Get LargeOperationCellThousandCount() As Long
  333. Let LargeOperationCellThousandCount(Long)
  334. Get DeferAsyncQueries() As Boolean
  335. Let DeferAsyncQueries(Boolean)
  336. Get MultiThreadedCalculation() As Object
  337. Function SharePointVersion(bstrUrl As String) As Long
  338. Get ActiveEncryptionSession() As Long
  339. Get HighQualityModeForGraphics() As Boolean
  340. Let HighQualityModeForGraphics(Boolean)
  341. Get FileExportConverters() As Object
  342. Get SmartArtLayouts() As Object
  343. Get SmartArtQuickStyles() As Object
  344. Get SmartArtColors() As Object
  345. Get AddIns2() As Object
  346. Get PrintCommunication() As Boolean
  347. Let PrintCommunication(Boolean)
  348. Sub MacroOptions([Macro As Variant], [Description As Variant], [HasMenu As Variant], [MenuText As Variant], [HasShortcutKey As Variant], [ShortcutKey As Variant], [Category As Variant], [StatusBar As Variant], [HelpContextID As Variant], [HelpFile As Variant], [ArgumentDescriptions As Variant])
  349. Get UseClusterConnector() As Boolean
  350. Let UseClusterConnector(Boolean)
  351. Get ClusterConnector() As String
  352. Let ClusterConnector(String)
  353. Get ProtectedViewWindows() As Object
  354. Get ActiveProtectedViewWindow() As Object
  355. Get IsSandboxed() As Boolean
  356. Get HinstancePtr() As Variant
  357. Get FileValidation() As MsoFileValidationMode
  358. Let FileValidation(MsoFileValidationMode)
  359. Get FileValidationPivot() As XlFileValidationPivotMode
  360. Let FileValidationPivot(XlFileValidationPivotMode)
  361. Get ShowQuickAnalysis() As Boolean
  362. Let ShowQuickAnalysis(Boolean)
  363. Get QuickAnalysis() As Object
  364. Get FlashFill() As Boolean
  365. Let FlashFill(Boolean)
  366. Get EnableMacroAnimations() As Boolean
  367. Let EnableMacroAnimations(Boolean)
  368. Get ChartDataPointTrack() As Boolean
  369. Let ChartDataPointTrack(Boolean)
  370. Get FlashFillMode() As Boolean
  371. Let FlashFillMode(Boolean)
  372. Get MergeInstances() As Boolean
  373. Let MergeInstances(Boolean)
  374. Get EnableCheckFileExtensions() As Boolean
  375. Let EnableCheckFileExtensions(Boolean)
  376. Get DefaultPivotTableLayoutOptions() As Object
  377. Get ShowConvertToDataType() As Boolean
  378. Let ShowConvertToDataType(Boolean)
  379. Get SensitivityLabelPolicy() As Object
  380.  
  381.  
  382. *** oWorkBook ***
  383.  
  384. Interface: Workbooks
  385. Version:
  386. Get Application() As Object
  387. Get Creator() As XlCreator
  388. Get Parent() As Object
  389. Function Add([Template As Variant]) As Object
  390. Sub Close()
  391. Get Count() As Long
  392. Get Item(Index As Variant) As Object
  393. Function Open(Filename As String, [UpdateLinks As Variant], [ReadOnly As Variant], [Format As Variant], [Password As Variant], [WriteResPassword As Variant], [IgnoreReadOnlyRecommended As Variant], [Origin As Variant], [Delimiter As Variant], [Editable As Variant], [Notify As Variant], [Converter As Variant], [AddToMru As Variant], [Local As Variant], [CorruptLoad As Variant]) As Object
  394. Sub OpenText(Filename As String, [Origin As Variant], [StartRow As Variant], [DataType As Variant], [TextQualifier As XlTextQualifier = 1], [ConsecutiveDelimiter As Variant], [Tab As Variant], [Semicolon As Variant], [Comma As Variant], [Space As Variant], [Other As Variant], [OtherChar As Variant], [FieldInfo As Variant], [TextVisualLayout As Variant], [DecimalSeparator As Variant], [ThousandsSeparator As Variant], [TrailingMinusNumbers As Variant], [Local As Variant])
  395. Function OpenDatabase(Filename As String, [CommandText As Variant], [CommandType As Variant], [BackgroundQuery As Variant], [ImportDataAs As Variant]) As Object
  396. Sub CheckOut(Filename As String)
  397. Function CanCheckOut(Filename As String) As Boolean
  398. Function OpenXML(Filename As String, [Stylesheets As Variant], [LoadOption As Variant]) As Object
  399.  
  400.  
  401. *** oExcelWorkbook ***
  402.  
  403. Interface: _Workbook
  404. CLSID: {00020819-0000-0000-C000-000000000046}
  405. Get Application() As Object
  406. Get Creator() As XlCreator
  407. Get Parent() As Object
  408. Sub Activate()
  409. Get ActiveChart() As Object
  410. Get ActiveSheet() As Object
  411. Get AutoUpdateFrequency() As Long
  412. Let AutoUpdateFrequency(Long)
  413. Get AutoUpdateSaveChanges() As Boolean
  414. Let AutoUpdateSaveChanges(Boolean)
  415. Get ChangeHistoryDuration() As Long
  416. Let ChangeHistoryDuration(Long)
  417. Get BuiltinDocumentProperties() As Object
  418. Sub ChangeFileAccess(Mode As XlFileAccess, [WritePassword As Variant], [Notify As Variant])
  419. Sub ChangeLink(Name As String, NewName As String, [Type As XlLinkType = 1])
  420. Get Charts() As Object
  421. Sub Close([SaveChanges As Variant], [Filename As Variant], [RouteWorkbook As Variant])
  422. Get CodeName() As String
  423. Get Colors([Index As Variant]) As Variant
  424. Let Colors([Index As Variant], Variant)
  425. Get CommandBars() As Object
  426. Get ConflictResolution() As XlSaveConflictResolution
  427. Let ConflictResolution(XlSaveConflictResolution)
  428. Get Container() As Object
  429. Get CreateBackup() As Boolean
  430. Get CustomDocumentProperties() As Object
  431. Get Date1904() As Boolean
  432. Let Date1904(Boolean)
  433. Sub DeleteNumberFormat(NumberFormat As String)
  434. Get DisplayDrawingObjects() As XlDisplayDrawingObjects
  435. Let DisplayDrawingObjects(XlDisplayDrawingObjects)
  436. Function ExclusiveAccess() As Boolean
  437. Get FileFormat() As XlFileFormat
  438. Sub ForwardMailer()
  439. Get FullName() As String
  440. Get HasPassword() As Boolean
  441. Get IsAddin() As Boolean
  442. Let IsAddin(Boolean)
  443. Function LinkInfo(Name As String, LinkInfo As XlLinkInfo, [Type As Variant], [EditionRef As Variant]) As Variant
  444. Function LinkSources([Type As Variant]) As Variant