2017年8月10日 星期四

最近發現 comtypes create 群益API COM objects 不用找 clsid

剛剛發現 comtypes  create 群益API COM objects 不用找 clsid,直接如下方所示,即可 CreateObject,

skC=cc.CreateObject(sk.SKCenterLib,interface=sk.ISKCenterLib)
skQ=cc.CreateObject(sk.SKQuoteLib,interface=sk.ISKQuoteLib)
skR=cc.CreateObject(sk.SKReplyLib,interface=sk.ISKReplyLib)

以此類推,這樣就不用找clsid

目前用起來好像跟之前一樣,還沒出什麼問題,先醬

4 則留言:

  1. 請問你怎麼知道 sk.SKCenterLib,interface=sk.ISKCenterLib , interface 是ISKCenterLib,而不是使用sk.ISKQuoteLib 呢

    回覆刪除
  2. 試出來的,SKCenterLib 配 ISKCenterLib 不是很直覺嗎? 為什麼會想配 ISKQuoteLib...
    為什麼知到要用interface=sk.ISKCenterLib,我反而忘記了

    回覆刪除
  3. 直覺是沒錯,我看群益範例也是這樣寫,只是想說要知道為甚麼要用sk.ISKCenterLib,我剛有試著去regedit找可以用搜索的方式找到..謝謝你的回覆

    回覆刪除
    回覆
    1. 我印象是,我用的IDE, 對 sk. 按tab,然後找看看有什麼 function 可以用,看到sk.ISKCenterLib 有 I ,就想是不是 interface 相關的功能,然後就套用看看...
      純粹運氣好,套到可以用,不然在這之前我也是去 regedit 裡找 clsid 來用

      刪除