明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2660|回复: 7

[讨论] 错误: 此类型的 LISP 值不能强制转换成 VARIANT: -32755

[复制链接]
发表于 2013-11-14 12:23 | 显示全部楼层 |阅读模式
本帖最后由 aicr317 于 2013-11-14 21:02 编辑

如题,这个问题怎么解决。。。。以前在2004上写的程序完美运行,在07或更高版就不行了。。。


(defun rw(file l_dat / stream rtn)
  (setq stream (vlax-get-or-create-object "ADODB.Stream"))
  (vlax-put-property stream 'Type 1)
  (vlax-invoke stream 'Open)
  (if l_dat
    (progn
      (setq l_dat (vlax-safearray-fill (vlax-make-safearray 17 (cons 0 (1- (length l_dat)))) l_dat))
      (vlax-put-property stream 'Position 0)
      (vlax-invoke-method stream 'Write l_dat)
      (vlax-invoke-method stream 'SaveToFile file 2)
    )
    (progn
      (vlax-invoke-method stream 'LoadFromFile file)
      (vlax-put-property stream 'Position 0)
      (setq rtn (vlax-safearray->list (vlax-variant-value (vlax-invoke-method stream 'Read (vlax-get stream 'Size)))))
    )
  )
  (vlax-release-object stream)
  rtn
)

发表于 2013-11-14 12:27 | 显示全部楼层
本帖最后由 NJZX05 于 2013-11-14 12:40 编辑

能不能把程序写整一点啊,都没法调试了
 楼主| 发表于 2013-11-14 12:29 | 显示全部楼层
恩是的,不知道什么原因,生成的值都不对!
 楼主| 发表于 2013-11-14 13:58 | 显示全部楼层
补充一句,读取文件生成的值不对,但是输出没有问题。
 楼主| 发表于 2013-11-14 21:03 | 显示全部楼层
NJZX05 发表于 2013-11-14 12:27
能不能把程序写整一点啊,都没法调试了

补全。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
 楼主| 发表于 2013-11-16 13:52 | 显示全部楼层
顶起,看看有没有高手解决下,感谢
发表于 2013-11-19 10:18 | 显示全部楼层

错误: 此类型的 LISP 值不能强制转换成 VARIANT: -32755

本帖最后由 NJZX05 于 2013-11-19 10:21 编辑

你连接的是什么数据库啊,数据库里只有一个表吗?结果不正确的原因是不是(vlax-put-property stream 'Position 0)需要重定位啊。

我用access调试了一下,发现程序运行是正常的啊,没有你所说的,不能强制转换的问题啊。
发表于 2013-11-20 10:22 | 显示全部楼层
本帖最后由 NJZX05 于 2013-11-20 11:02 编辑

看了你的这个贴子http://bbs.mjtd.com/thread-108428-1-1.html,得到了启发,由于CAD2008中仅二进制位的后8位有效,因此,用nzl1116的办法,可以很好的解决此问题,也就是在读取完毕后,加上一句:
(setq rtn (mapcar '(lambda (Item)(rem Item 256)) rtn))
这样就能很好地解决了,而经测试,如果用大于255的数据代入的话,程序也不会让写

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-5-19 22:17 , Processed in 0.222052 second(s), 29 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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