改问题的能力

改问题的能力,第1张

概述问题情况:网页上调用了VB写的一个控件生成Word文档。现在当某一ID>36767(2的16次方,记不清这个数了)时就会出错,生不成文档。因此怀疑是这个控件的入口方法的参数给设定为Integer型,导致出错。 已有条件:有早期源码,并不是最新的源码。但里面只有一个方法的参数为Integer,据分析肯定不是这个方法导致。 这问题何解?         1.确认当前代码中没有另外的Integer参数方 问题情况:网页上调用了VB写的一个控件生成Word文档。现在当某一ID>36767(2的16次方,记不清这个数了)时就会出错,生不成文档。因此怀疑是这个控件的入口方法的参数给设定为Integer型,导致出错。
已有条件:有早期源码,并不是最新的源码。但里面只有一个方法的参数为Integer,据分析肯定不是这个方法导致。 这问题何解? 1.确认当前代码中没有另外的Integer参数方法时,怀疑他们给出的疑问有问题,也许不是VB控件的错。但确实是当ID大于那一值后才会出现这种问题。 2.查了VB代码后,发现在处理图片时有一个路径是类似于Picture_ID这样的内容,于是怀疑是因为写这个路径的那个方法是Integer参数,因为没有生成这个路径,所以VB在这个路径下取图片时就会出错。但经确认,网页是用PHP写的,PHP不会有Integer这样的主动声明过程,也就产生不了这种错误,这个怀疑被否定。 3.再次查看VB代码,发现它在生成Word文档时处理了一个XML文件,搜索这个文件后,在某一位置下找到。删除后,在执行一下点按钮的 *** 作,这时又有了XML文件。也就是说VB控件里还有一个生成XML文件的方法。因为VB代码不是最终版的,所以怀疑在后面的代码中又加了一个对应的生成XML的方法。 4.到此时才想起去看看PHP的代码。那里面清楚的写着VB控件的入口方法为另一个现有代码中没有的方法。 5.于是接下来的工作就是在现在代码中补上这个没有的方法,并把生成XML文件的方法也补上。写好代码后,得到对应的.ocx控件,二进制兼容后。替换。搞定 总结

以上是内存溢出为你收集整理的改问题的能力全部内容,希望文章能够帮你解决改问题的能力所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/langs/1285799.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-09
下一篇2022-06-09

发表评论

登录后才能评论

评论列表(0条)

    保存