JS调用DELPHI函数问题。蛋疼了两周!!!
时间:2011-10-29
来源:互联网
             程序写好后,在我的电脑上面没有出现任何问题,在同事电脑上面也没任何问题。
当用户使用的时候,就有N个用户出现相同的问题了。
错误如下:
=========================================
行:110
字符:2
错误:意外的调用了方法或属性访问
代码:0
URL :res://Prores.dll/INDEX
=========================================
找到JS中第110行代码如下:
function getpack() {
var packs ="";
packs = external.gockpack().toString(); <==========这是110行.
return packs;
}
这行正是调用我DELPHI中的函数gockpack这个。
可是在我的电脑上面并不会出现这类情况。请问出现这类情况会是什么原因造成的。
DELPHI接口定义如下:
Delphi(Pascal) code
Delphi(Pascal) code
            当用户使用的时候,就有N个用户出现相同的问题了。
错误如下:
=========================================
行:110
字符:2
错误:意外的调用了方法或属性访问
代码:0
URL :res://Prores.dll/INDEX
=========================================
找到JS中第110行代码如下:
function getpack() {
var packs ="";
packs = external.gockpack().toString(); <==========这是110行.
return packs;
}
这行正是调用我DELPHI中的函数gockpack这个。
可是在我的电脑上面并不会出现这类情况。请问出现这类情况会是什么原因造成的。
DELPHI接口定义如下:
Delphi(Pascal) code
interface uses Windows, ActiveX, Classes, Graphics, StdVCL, Variants; // *********************************************************************// // GUIDS declared in the TypeLibrary. Following prefixes are used: // Type Libraries : LIBID_xxxx // CoClasses : CLASS_xxxx // DISPInterfaces : DIID_xxxx // Non-DISP interfaces: IID_xxxx // *********************************************************************// const // TypeLibrary Major and minor versions MaxPackMajorVersion = 1; MaxPackMinorVersion = 0; LIBID_MaxPack: TGUID = '{517F7078-5E73-4E5A-B8A2-8F0FF14EF21B}'; IID_IMyExternal: TGUID = '{4F995D09-CF9E-4042-993E-C71A8AED661E}'; type // *********************************************************************// // Forward declaration of types defined in TypeLibrary // *********************************************************************// IMyExternal = interface; IMyExternalDisp = dispinterface; // *********************************************************************// // Interface: IMyExternal // Flags: (4416) Dual OleAutomation Dispatchable // GUID: {4F995D09-CF9E-4042-993E-C71A8AED661E} // *********************************************************************// IMyExternal = interface(IDispatch) ['{4F995D09-CF9E-4042-993E-C71A8AED661E}'] function gockpack: WideString; safecall; function vcldestr(const pbstr: WideString; const tpstr: WideString): WideString; safecall; end; // *********************************************************************// // DispIntf: IMyExternalDisp // Flags: (4416) Dual OleAutomation Dispatchable // GUID: {4F995D09-CF9E-4042-993E-C71A8AED661E} // *********************************************************************// IMyExternalDisp = dispinterface ['{4F995D09-CF9E-4042-993E-C71A8AED661E}'] function gockpack: WideString; dispid 201; function vcldestr(const pbstr: WideString; const tpstr: WideString): WideString; dispid 202; end; implementation uses ComObj; end.
Delphi(Pascal) code
unit UMyExternal; interface uses windows,Classes, ComObj, MaxPack_TLB,funs,EncdDecd; type TMyExternal = class(TAutoIntfObject, IMyExternal, IDispatch) private // fData: TStringList; // info from data file protected { IMyExternal methods } public function gockpack: WideString; safecall; constructor Create; destructor Destroy; override; end; implementation uses SysUtils, ActiveX, StdActns; { TMyExternal } constructor TMyExternal.Create; var TypeLib: ITypeLib; // type library information begin inherited Create(TypeLib, IMyExternal); end; destructor TMyExternal.Destroy; begin //fData.Free; inherited; end; function TMyExternal.gockpack: WideString; begin result :='test'; end; end.
作者: ltysunde 发布时间: 2011-10-29
             有知道的朋友,帮提供下思路。小弟不知从何下手。是什么可能引发的血案?            
            作者: ltysunde 发布时间: 2011-10-29
             顶下。。            
            作者: ltysunde 发布时间: 2011-10-29
 相关阅读 更多  
      
    热门阅读
-   office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具 office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具阅读:74 
-   如何安装mysql8.0 如何安装mysql8.0阅读:31 
-   Word快速设置标题样式步骤详解 Word快速设置标题样式步骤详解阅读:28 
-   20+道必知必会的Vue面试题(附答案解析) 20+道必知必会的Vue面试题(附答案解析)阅读:37 
-   HTML如何制作表单 HTML如何制作表单阅读:22 
-   百词斩可以改天数吗?当然可以,4个步骤轻松修改天数! 百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!阅读:31 
-   ET文件格式和XLS格式文件之间如何转化? ET文件格式和XLS格式文件之间如何转化?阅读:24 
-   react和vue的区别及优缺点是什么 react和vue的区别及优缺点是什么阅读:121 
-   支付宝人脸识别如何关闭? 支付宝人脸识别如何关闭?阅读:21 
-   腾讯微云怎么修改照片或视频备份路径? 腾讯微云怎么修改照片或视频备份路径?阅读:28 















