游戏开发论坛

 找回密码
 立即注册
搜索
查看: 4562|回复: 12

救命阿!!!!报错“定长不能大于64K ”请问如何解决

[复制链接]

5

主题

27

帖子

31

积分

注册会员

Rank: 2

积分
31
发表于 2007-8-17 16:16:00 | 显示全部楼层 |阅读模式
我的变量声明:
Private Type IO_structure
    name As String           '定义点位号
    descripition As String   '定义描述
    cabinet_form As String   '定义机柜来源号
    cabiner_assign As String '定义本系统机柜号
    cable_id As String       '定义
    cable_spe As String      '定义
    terminal_F_1 As String   '定义现场端子1
    terminal_F_2 As String   '定义现场端子2
    location_id As String    '定义端子板号
    terminal_t_1 As String   '定义机柜端子1
    terminal_t_2 As String   '定义机柜端子2
    terminal_t_3 As String   '定义机柜端子3
End Type

Private Type dzb_structure
    Cabinet As String        '定义所在机柜号
    locaton_id As String     '定义端子板号
    type As String           '定义端子板型号
    conid As String          '定义控制站号
    jl_id As String          '定义机笼号
    model_id As String       '定义卡件号
    acess_id As String       '定义通道号
End Type

Private Type Cabinet_Structure                  出错的位置!!!!!!!!!!
    name As String           '定义机柜号
    io(11, 500) As IO_structure '定义机柜内的IO点
    io_num As Integer        '定义IO点数量
    dzb(11, 32) As dzb_structure '定义机柜内的端子板
    dzb_num As Integer       '定义端子板数量
End Type



Dim cab_name(1) As String
Dim cab_io(11, 500) As IO_structure
Dim io_num(11) As Integer
Dim dzb(11, 32) As dzb_structure
Dim dzb_num(11) As Integer


Dim objacadMB    As AutoCAD.AcadApplication         '启动CAD程序
Dim objacadModel As AutoCAD.AcadApplication         '启动CAD模版程序
Dim objdwgMB     As AutoCAD.AcadDocument            '定义模板dwg文件
Dim objdwgModel  As AutoCAD.AcadDocument            '定义目标dwg文件

Dim filenameExcel As String                         'Excel文件名
Dim filenameMB As String                            '目标文件名
Dim filenameModel As String                         '模版文件名

Dim objDbx As AxDbDocument
Dim elem As Object
Dim blkName As String
Dim dwgName As String
Dim blkObj(0) As Object
Dim pnt As Variant




Dim xlApp As Excel.Application
Dim xlBook As Excel.Workbook
Dim xlSheet As Excel.Worksheet  
word color:#663399word size:5

5

主题

27

帖子

31

积分

注册会员

Rank: 2

积分
31
 楼主| 发表于 2007-8-17 16:16:00 | 显示全部楼层

Re:救命阿!!!!报错“定长不能大于64K ”请问如何解决

出错的位置在
Private Type Cabinet_Structure  

15

主题

2093

帖子

2093

积分

金牌会员

Rank: 6Rank: 6

积分
2093
发表于 2007-8-17 16:42:00 | 显示全部楼层

Re:救命阿!!!!报错“定长不能大于64K ”请问如何解决

语言限制,无法解决……

7

主题

109

帖子

169

积分

注册会员

Rank: 2

积分
169
发表于 2007-8-17 21:59:00 | 显示全部楼层

Re:救命阿!!!!报错“定长不能大于64K ”请问如何解决

建议楼主把数组定义成动态数组,初始化时定义数组长度,以后不再改动,就是把动态数组当静态数组用。
因为动态数组不受64K限制。

或者缩减数组长度,减少内存占用。

5

主题

27

帖子

31

积分

注册会员

Rank: 2

积分
31
 楼主| 发表于 2007-8-20 08:40:00 | 显示全部楼层

Re:救命阿!!!!报错“定长不能大于64K ”请问如何解决

如何定义动态数组阿?我没定义过,;例如我那段怎么改写

26

主题

537

帖子

537

积分

高级会员

Rank: 4

积分
537
发表于 2007-8-20 09:21:00 | 显示全部楼层

Re:救命阿!!!!报错“定长不能大于64K ”请问如何解决

看看书上关于动态数组和redim

7

主题

109

帖子

169

积分

注册会员

Rank: 2

积分
169
发表于 2007-8-20 10:05:00 | 显示全部楼层

Re:救命阿!!!!报错“定长不能大于64K ”请问如何解决

Private Type Cabinet_Structure               '   出错的位置!!!!!!!!!!
    name As String           '定义机柜号
    io() As IO_structure '定义机柜内的IO点             改动
    io_num As Integer        '定义IO点数量
    dzb() As dzb_structure '定义机柜内的端子板         改动
    dzb_num As Integer       '定义端子板数量
End Type

Dim a As Cabinet_Structure    '没看到你的Cabinet_Structure类型变量,这是我加的

Private Sub Form_Load()
ReDim a.io(11, 500)          '重定义
ReDim a.dzb(11, 32)
End Sub

你试试看

82

主题

782

帖子

798

积分

高级会员

Rank: 4

积分
798
发表于 2007-8-20 13:28:00 | 显示全部楼层

Re:救命阿!!!!报错“定长不能大于64K ”请问如何解决

完全正确。支持。

14

主题

175

帖子

175

积分

注册会员

Rank: 2

积分
175
发表于 2007-8-21 08:16:00 | 显示全部楼层

Re: 救命阿!!!!报错“定长不能大于64K ”请问如何解决

mm

sf_200782181555.rar

104.06 KB, 下载次数:

6

主题

213

帖子

213

积分

中级会员

Rank: 3Rank: 3

积分
213
发表于 2007-8-22 09:55:00 | 显示全部楼层

Re:救命阿!!!!报错“定长不能大于64K ”请问如何解决

楼上正解
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2026-1-25 09:16

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表