E2208 cannot access an inactive scope 问题

tianlu123 2011-08-24 09:16:03
急啊,现在调用函数查看函数内定义数组和结构体出现这个问题,请大家帮忙分析下
...全文
312 13 打赏 收藏 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
tianlu123 2011-08-24
  • 打赏
  • 举报
回复
可以了,妖哥真给力,我是信了
ccrun.com 2011-08-24
  • 打赏
  • 举报
回复
我用你提供的原型,做了一个简单的例子程序,你可以参考一下。
C++写的DLL:
#include <stdio.h>

extern "C" __declspec(dllexport)
int WINAPI FP100_DownpointFP_ASC(unsigned char *fp_data, int FP_num, char *ip, int port)
{
// 这里仅仅是简单的将输入的参数显示而已
// 其中fp_data只显示第一个字节的值

char szBuf[1024];
sprintf(szBuf, "1: %d, 2: %d, 3: %s, 4: %d", fp_data[0], FP_num, ip, port);

MessageBoxA(0, szBuf, "DLL中的提示", MB_OK | MB_ICONINFORMATION);

return 0;
}


Delphi中调用:
function FP100_DownpointFP_ASC(fpdata: PByte; FP_num: integer; ip: pchar; port: integer): Integer; stdcall; external 'project1.dll';

procedure TForm1.Button1Click(Sender: TObject);
var
fp_data: array[0..255] of byte;
ip: array[0..255] of char;
ret_Flag: Integer;
begin
// 简单赋一些值
fp_data[0] := $FF;
StrCopy(ip, 'test而已');

ret_Flag := FP100_DownpointFP_ASC(@fp_data, 1, ip, 1000);

Caption := IntToStr(ret_Flag);
end;
tianlu123 2011-08-24
  • 打赏
  • 举报
回复
DLL int WINAPI FP100_DownpointFP_ASC(unsigned char *fp_data, int FP_num, char *ip, int port);
ccrun.com 2011-08-24
  • 打赏
  • 举报
回复
FP100_DownpointFP
这个函数的原型是什么呢。
zzbinfo 2011-08-24
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 tianlu123 的回复:]
估计是第一行的问题,因为他用0带进去可以
[/Quote]可以尝试换换,换成其他的试试不就知道了。这个错误主要是访问的地址错误造成的。
tianlu123 2011-08-24
  • 打赏
  • 举报
回复
估计是第一行的问题,因为他用0带进去可以
tianlu123 2011-08-24
  • 打赏
  • 举报
回复
      StrCopy(@FpStr, pchar(tmpStr));
// FillChar(FpStr,sizeof(FpStr),0);
// StrMove(@FpStr,pchar(tmpStr),996);
sleep(2);
//ret_Flag := FP100_DownpointFP(@FpStr, BakNo[i], pchar(IpStr), 5101);
// ret_Flag := FP100_DownpointFP_ASC(@FpStr[0],1,pchar(IpStr),5101);
ret_Flag := FP100_DownpointFP_ASC(@FpStr, 1, pchar(IpStr), Port);
tianlu123 2011-08-24
  • 打赏
  • 举报
回复
好
StrCopy(@FpStr, pchar(tmpStr));
// FillChar(FpStr,sizeof(FpStr),0);
// StrMove(@FpStr,pchar(tmpStr),996);
sleep(2);
//ret_Flag := FP100_DownpointFP(@FpStr, BakNo[i], pchar(IpStr), 5101);
// ret_Flag := FP100_DownpointFP_ASC(@FpStr[0],1,pchar(IpStr),5101);
ret_Flag := FP100_DownpointFP_ASC(@FpStr, 1, pchar(IpStr), Port);
ccrun.com 2011-08-24
  • 打赏
  • 举报
回复
不懂没关系,有代码可以贴出来看看。
tianlu123 2011-08-24
  • 打赏
  • 举报
回复
他们用DELPHI,因为我不懂DELPHI,
ccrun.com 2011-08-24
  • 打赏
  • 举报
回复
他是如何调用的,可有代码?
tianlu123 2011-08-24
  • 打赏
  • 举报
回复
没用,主要是我同事调用我动态库出现这个问题,我用测试程序写的可以调用该函数并且不出错
ccrun.com 2011-08-24
  • 打赏
  • 举报
回复
Google "cannot access an inactive scope",第一个链接对你是否有用?
公司财务管理系统(源码+数据库+论文+答辩ppt一整套齐全)java开发springboot框架javaweb,可做计算机毕业设计或课程设计 本系统分为员工、管理员两个用户角色。 员工功能: 1. 注册登录:填写员工账号、密码、姓名、部门职位等信息完成注册,账号密码登录系统。 2. 请假管理:填写请假标题、原因、时间、类型提交请假申请,查看本人请假记录与审核回复。 3. 考勤查看:查看个人考勤信息,查看出勤、请假、迟到、早退、缺勤统计数据。 4. 薪资查询:查看每月薪资详情,查看底薪、绩效、奖金、扣款以及实发工资等信息。 5. 薪资异议申请:对薪资有疑问时提交薪资异议申请,查看申请审核状态与管理员回复。 6. 个人中心:修改个人头像、手机号等资料,修改登录密码。 管理员功能: 1. 员工管理:查询、新增、编辑、删除员工账号,维护员工部门、职位等基础信息。 2. 请假信息管理:查看全部员工请假申请,搜索筛选请假记录,审核请假申请并填写回复。 3. 考勤信息管理:录入、编辑、删除员工考勤数据,按年月统计员工出勤相关信息。 4. 薪资信息管理:录入员工每月薪资数据,维护底薪、绩效、奖金、扣款等薪资记录。 5. 薪资异议处理:查看员工提交的薪资异议申请,审核申请内容,填写处理回复。 6. 系统管理:维护首页轮播图,发布系统公告,查看系统操作日志。
内容概要:本文系统介绍了基于Matlab代码实现的飞机能量-机动性(E-M)特性分析方法,重点聚焦于评估飞机在不同飞行状态下的关键性能指标,包括最大转弯速度(即机动速度)、最大可持续转弯速度以及对应最大可持续载荷系数的真空速。通过构建精确的数学模型并开展仿真计算,深入剖析飞机在能量高度与过载限制下的机动包线边界,揭示其飞行性能极限。文中不仅阐述了理论推导过程,还提供了完整的Matlab仿真代码与结果可视化分析,具有较强的实践指导意义和工程应用价值。; 适合人群:航空航天工程领域的研究人员、飞行器设计与性能分析工程师、高等院校飞行器设计、飞行动力学等相关专业的研究生及高年级本科生,以及对飞行性能仿真与空战战术分析感兴趣的技术爱好者。; 使用场景及目标:①用于新研飞行器的初步性能评估与设计方案优化;②支撑飞行训练中安全飞行边界的确定与高过载机动操作指导;③辅助空战战术研究、任务剖面设计及飞行控制系统开发验证; 阅读建议:建议读者具备空气动力学、飞行力学及Matlab编程基础,结合文中提供的仿真代码进行实操演练,通过调整气动参数与飞行条件深入理解E-M图谱的生成机制及其在实际工程中的应用逻辑。

13,871

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧