回 帖 发 新 帖 刷新版面

主题:哪位遇到过控件的“默认过程”中看不到代码的怪事?

这等怪事我已经是第二次遇到了,第一次是在08年3月中旬。
那一次我怪重装系统没做好(这次也是重装系统才几日),今天又发生了同样怪事我解释不了了。

就是所有控件的“默认过程”中的代码都看不见,在属性表中也显示为空,但运行程序时还正常执行,说明那些代码还在,并且还在工作。
但如果修改了控件再存回后,那些代码就彻底没有了,因为再运行时发生错误了。

3月中旬时只发生在一个表单集中,那个表单集上有四个表单,我找到备份换上了,这次是所有表单,而且是打开备份也同样看不见。

怪!怪!怪!
[em10][em10][em10]

回复列表 (共24个回复)

沙发

问题的发生我知道:
是我重设了“工具-选项-IDE-类型-代码窗口”中的字体了。
可就是怎么也再就设不回来了。
[em27][em27][em27][em27][em27]

板凳

老兄:

控件的“默认过程”中代码

是指那里的,什么代码啊?

3 楼

我估计,并不是重设字体造成的.
看了近段时间种子乐的帖子,好象对维护精灵感兴趣,记得前两年曾发帖如何删除维护精灵,我曾说过删除FFOX.APP来做到.
你这次的问题,我估计十有八九是使用维护精灵的缘故,使用维护精灵前,最好看清它的提示.

4 楼

[quote]我估计,并不是重设字体造成的.
看了近段时间种子乐的帖子,好象对维护精灵感兴趣,记得前两年曾发帖如何删除维护精灵,我曾说过删除FFOX.APP来做到.
你这次的问题,我估计十有八九是使用维护精灵的缘故,使用维护精灵前,最好看清它的提示.[/quote]
zxplhzlt你好:
    应该和维护精灵没有关系,因为3月份发生那次没有搞维护精灵。
    这个问题十分奇怪,看不见“默认过程”中的代码,但运行时还起作用。
    一旦修改后再保存,那些“默认过程”中的代码可能就是彻底没了,因为再运行时不起作用了。
    谢谢zxplhzlt弟关注!


5 楼

[quote]老兄:

控件的“默认过程”中代码

是指那里的,什么代码啊?[/quote]
我的这套软件有70-80个表单,所有表单和控件“默认过程”中的代码全都看不见了。但运行正常,说明那些代码还在正常工作。
怪!怪!怪!

6 楼

我所知道的是,表单的方法中,没有写代码时,vfp的界面中提示[默认过程],你定义方法之后,就显示你定义的方法(事件)名称。

若显示[默认过程],则说明你已经删除自己定义的方法(事件)程序。

你的问题我没有遇到过,但上面是我的理解。我很害怕出此类问题,所以我经常备份,并且保留比较多的不同时间的备份压缩包。
而且我也不敢用哪些自己没有把握的非微软的工具,不是怀疑工具有问题,而是自己的功力太差,刀磨得太锋利,不小心容易割到自己。

建议你从旧一点的备份中,看是不是还有,若有,慢慢地恢复吧。
软件做到这种份上,应该考虑灾难问题,解决灾难,最好的方法是靠备份。乌鸦对灾难的理解是比较深的,这些理解是在共军服役中受哪些曾经两度和霉菌玩命的前辈的教导。

7 楼

[quote]
zxplhzlt你好:
    应该和维护精灵没有关系,因为3月份发生那次没有搞维护精灵。
    这个问题十分奇怪,看不见“默认过程”中的代码,但运行时还起作用。
    一旦修改后再保存,那些“默认过程”中的代码可能就是彻底没了,因为再运行时不起作用了。
    谢谢zxplhzlt弟关注!


[/quote]
判断是不是维护精灵造成的,其实很简单,只要再使用维护精灵一次,当然,要做好备份.

使用use命令打开一个表单,可以看到里面其中有两个字段,一是methods,一是objcode,
我们在编写表单的事件和方法,都存放在methods中,是原码与明码,而objcode存放的是对你编写表单的事件和方法进行编译后的编译码,假如把methods当作成PRG文件的话,那objcode就是编译后的FXP文件,所以即使把methods清空(即看不见“默认过程”中的代码),它照样运行,因objcode中还有编译后代码.

8 楼

乌鸦弟你好:
    你虽然没有遇到这个问题,但你对这个问题分析的很透彻。
    在属性表的第二页中没有写过代码的叫“默认过程”,写过代码的叫“用户自定义过程”,我这里发生的灾难就是那些“用户自定义过程”全都不见了,全都变成了“默认过程”。但奇怪的是可以运行,运行时那些代码还都在正常工作。可一但修改过再保存,那些代码就真的没有了,运行时就要出错。
    昨天上午发生的这场灾难,一直折腾到刚才才算解决,解决的方法就是象你说的那样,从过去的备份中找回那些表单,换到现在这套软件中。这样就难免有不吻合之处,还需要调整。
    问题虽然是勉强解决了,但发生的原因没找到,解决的最佳方法没找到,所以对这事还是心有余悸。目前也只好象你讲的那样,注意多做备份,靠从备份中找回了。
    3月份发生的那次灾难是在东北发生的,到广西发现的,备份是从东北那里传过来才解决的。这次灾难是昨天发生的,是从云南带回来的那套备份里找回来的,在这里机子上的备份全都看不见了。
    可怕!可怕!太可怕了!

9 楼

老兄:
7楼:zxplhzlt 老师说的有理!
你的原因,就是这种情况的!

以后用其它的防编译软件,做好先试试看。
其原因是你用了《维护精灵》的超强加密的方法了!

10 楼

[quote]
判断是不是维护精灵造成的,其实很简单,只要再使用维护精灵一次,当然,要做好备份.
[/quote]
叫zxplhzlt老弟给言中了,元凶就是那个“维护精灵”,按zxplhzlt老弟上面的说法做了一遍,果然“自定义过程”全都不见了。
乌鸦弟说的也很有道理:“而且我也不敢用哪些自己没有把握的非微软的工具”
问题找到了,也就找到了解决的办法了,在用“维护精灵前”先给它备份一个,用它做完这套就不要了,这样也费不了多少事。
多谢二位老弟了,多谢、多谢!

我来回复

您尚未登录,请登录后再回复。点此登录或注册