标题:调用api Too many arguments (Error 1230)
取消只看楼主
weiyisc
Rank: 1
等 级:新手上路
帖 子:69
专家分:7
注 册:2009-5-17
结帖率:80.95%
 问题点数:0 回复次数:5 
调用api Too many arguments (Error 1230)
程序代码:
        Declare integer MDC_AddScreenDrug In DLL_PASS4 String pcIndex, Int piOrderNo, String pcDrugUniqueCode, String pcDrugName, String pcDosePerTime,;
            String pcDoseUnit, String pcFrequency, String pcRouteCode, String pcRouteName, String pcStartTime,;
            String pcEndTime, String pcExecuteTime, String pcGroupTag, String pcIsTempDrug, String pcOrderType,;
            String pcDeptCode, String pcDeptName, String pcDoctorCode, String pcDoctorName, String pcRecipNo,;
            String pcNum, String pcNumUnit, String pcPurpose, String pcOprCode, String pcMediTime, String pcRemar    
        
        RETURN MDC_AddScreenDrug(pcIndex,piOrderNo,pcDrugUniqueCode,pcDrugName,pcDosePerTime,pcDoseUnit,pcFrequency,pcRouteCode,;
            pcRouteName,pcStartTime,pcEndTime,pcExecuteTime,pcGroupTag,pcIsTempDrug,pcOrderType,pcDeptCode,pcDeptName,;
            pcDoctorCode,pcDoctorName,pcRecipNo,pcNum,pcNumUnit,pcPurpose,pcOprCode,pcMediTime,pcRemark)


        调用API,提示参数太多。请问一下怎么回事?参数不能超多少?
搜索更多相关主题的帖子: api 多少 String 参数 调用 
2022-02-19 01:33
weiyisc
Rank: 1
等 级:新手上路
帖 子:69
专家分:7
注 册:2009-5-17
得分:0 
以下是引用吹水佬在2022-2-19 09:44:05的发言:

对照了一下刚好,VFP传递参数的最大数目 26


那么怎么还是提示参数太多?
2022-02-19 11:25
weiyisc
Rank: 1
等 级:新手上路
帖 子:69
专家分:7
注 册:2009-5-17
得分:0 
回复 4楼 吹水佬
第三方软件公司的
2022-02-19 13:01
weiyisc
Rank: 1
等 级:新手上路
帖 子:69
专家分:7
注 册:2009-5-17
得分:0 
回复 2楼 吹水佬
VFP传递参数的最大数目 26

但是在申明的时候,最多25个。。。26把参数太多
2022-02-19 22:33
weiyisc
Rank: 1
等 级:新手上路
帖 子:69
专家分:7
注 册:2009-5-17
得分:0 
以下是引用吹水佬在2022-2-20 09:11:06的发言:

测试了一下,API最多25个参数,VFP函数就26个

**    DLLIMPORT void test(
**        int* a,int* b,int* c,int* d,int* e,int* f,int* g,int* h,int* i,int* j,
**        int* k,int* l,int* m,int* n,int* o,int* p,int* q,int* r,int* s,int* t,
**        int* u,int* v,int* w,int* x,int* y,int* z)
**    {
**        *a=1, *b=2, *c=3, *d=4, *e=5, *f=6, *g=7, *h=8, *i=9, *j=10,*k=11,*l=12,*m=13;
**        *n=14,*o=15,*p=16,*q=17,*r=18,*s=19,*t=20,*u=21,*v=22,*w=23,*x=24,*y=25,*z=26;
**    }

DECLARE test IN test.dll ;
    long@,long@,long@,long@,long@,long@,long@,long@,long@,long@,;
    long@,long@,long@,long@,long@,long@,long@,long@,long@,long@,;
    long@,long@,long@,long@,long@,long@
   
STORE 0 TO a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z
test(@a,@b,@c,@d,@e,@f,@g,@h,@i,@j,@k,@l,@m,@n,@o,@p,@q,@r,@s,@t,@u,@v,@w,@x,@y,@z)
? a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z

昨天折腾完了,api定义最多25个。
感谢版主
2022-02-20 16:13
weiyisc
Rank: 1
等 级:新手上路
帖 子:69
专家分:7
注 册:2009-5-17
得分:0 
回复 12楼 吹水佬
确实,现在常规是传个json串。就可以了。
2022-02-20 23:01



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-508380-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.285306 second(s), 9 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved