我的公司試圖在VFoxpro 9.0中使用第三方PDF生成器。他們提供了一個.dll COM文件和方法文檔,但他們不支持Foxpro,所以他們無法提供幫助。從Foxpro訪問COM方法
我註冊了DLL並加載了COM,它成功了 - 在我創建對象()後,intellisense提示我提供了方法列表,所以我知道它正確地導入了它們。但是,當我嘗試調用任何一種方法時,我會看到一個彈出窗口,它只是簡單地說出「語法錯誤」,這只是很少幫助。我試着調用一個不帶參數的方法,以防問題通過約定,但也會返回「語法錯誤」。除了創建對象並將其用於方法調用之外,還有什麼需要做的嗎?
我不是一個真正的foxpro傢伙,但我已經嘗試過使用不同的COM,像Excel.Application這樣的東西,他們的工作,因爲我期望他們。是否有任何理由COM可能與Foxpro不兼容,或需要一些其他操作來使其工作?
非常感謝您的任何建議。
好的,一天半之後我發現了這個問題。
我在輸入a=createobject("library.class")
,然後輸入= a.method()
,它返回「語法錯誤」。事實證明,如果我把這個變量叫做a
,那麼它就可以工作!看來在foxpro中存在某種錯誤,所以當變量名稱爲a
時,它不能正確解析它。如果我使用b
,x
,anotherName
或其他任何工作。如果我輸入?a
它確認a
是(object)
,正如我所說的,intellisense正在識別所有方法名稱和類型。我迫不及待地想回到java。
非常感謝,沒有其他答案是需要的,但我會留下它以防萬一它可以幫助其他可憐的靈魂。
發佈代碼段 –
字母A到J在FoxPro中被保留爲前10個工作區的替代名稱。 (這是一個向後兼容的東西。)通常,使用它們中的任何一個作爲變量名是一個壞主意。字母M也是這樣,它保留用於區分變量和字段。 –
嗨@Russel,你可以發表你自己發現的答案*作爲答案*並接受答案,這樣這個問題就不會留在「未回答的問題」列表中嗎?我希望你在java世界中重獲樂趣; - )... –