| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1811 人关注过本帖
标题:关于运行程序弹出程序错误对话框的问题
只看楼主 加入收藏
chrisli
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2013-1-16
结帖率:50%
收藏
已结贴  问题点数:20 回复次数:12 
关于运行程序弹出程序错误对话框的问题
我做的系统里有这样一个用户信息修改的表单:
  用户名:text1   密码:text2
新用户名:text3   新密码text4
(command修改) (command 取消)

表单初始化的代码我写不好,command的click事件的代码我写了。下面是修改的click事件的代码
Use sysuser shar
SELECT sysuser
LOCATE FOR 用户名=ALLTRIM(thisform.Text1.value)
IF FOUND()    &&&  找到此学号的记录
    IF ALLTRIM(thisform.Text2.value)==ALLTRIM(sysuser.密码)
        REPLACE 密码 WITH ALLTRIM(thisform.Text4.value)
        REPLACE 用户名 WITH ALLTRIM(thisform.Text3.value)
        MESSAGEBOX("修改成功!",64,"提示")
        thisform.release
    ELSE
        MESSAGEBOX("密码错误,请重新输入!",48,"提示")
        thisform.Text2.value = ""
        thisform.Text2.setfocus
    ENDIF
    ELSE   &&&  没找到学号
    MESSAGEBOX("无此用户名,请重新输入!",48,"提示")
    thisform.Text1.value= ""
    thisform.Text1.setfocus()
ENDIF
thisform.refresh
在表单单独运行的情况下,很正常,能成功修改。
但是连编后,在菜单中打开这个表单,输入信息后,点击修改,弹出:找不到文件“****\sysuser” 的程序错误对话框!请问是什么问题,能帮我解决吗?我是初学者,边学边做程序!麻烦了!
我后来查了资料后在主程序中加了set path 的语句,并且修改了工具----选项-----文件位置   里的默认目录和搜索路径,再连编后能够正常修改了。但是这肯定意味着如果换了文件夹的位置,就得在主程序中修改代码,所以,希望有更好的解决办法!
搜索更多相关主题的帖子: 用户名 command 运行程序 密码 
2013-01-16 13:09
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:10 
程序文件夹设置相对路径:
SET DEFAULT TO SYS(5)+SYS(2003)

实际上不需要设置文件夹路径(只要不修改第一级目录),程序编译完成后,随便放在那个盘下

[ 本帖最后由 sdta 于 2013-1-16 13:17 编辑 ]

坚守VFP最后的阵地
2013-01-16 13:13
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:0 
最好上传你的所有文件,包括*.PJX、*.PJT

坚守VFP最后的阵地
2013-01-16 13:18
taifu945
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:80
帖 子:1545
专家分:3298
注 册:2012-7-6
收藏
得分:4 
楼主,用了目录的名字是吧?告诉你一个DOS时代就很有用的路径相对引用“.\”和“..\”。建议你主程序开头用SET DEFAULT TO .\sysuser语句。这样,无论你将来主程序安装的一级目录名是什么,只要sysuser目录名不变,其下的所有文件就能顺利找到。“..\”是指本目录的上一级目录。虽然DOS时代一去不复返了,但那个时代留下来的一些东西至今还很有用。
2013-01-16 13:33
chrisli
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2013-1-16
收藏
得分:0 
回复 4楼 taifu945
我刚刚试了,加到了主程序里面,把选项里面的文件位置的默认目录还有搜索路径也改为了空的,连编后,exe文件都运行不了
2013-01-16 13:59
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:4 
乱试是不行的,必须搞清楚原理。

授人以渔,不授人以鱼。
2013-01-16 14:00
chrisli
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2013-1-16
收藏
得分:0 
回复 6楼 TonyDeng
求指教呀,新手上路,没学过VFP呀!
2013-01-16 14:06
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
这个与VFP无关,与你程序设计的目录树有关。编译之后的.exe文件放在哪,sysuser.dbf就跟在哪,这样不需任何改变,而你现在出了问题,必定是两个文件处于不同的文件夹,而且系统的搜索路径没有相应的设置。要彻底解决问题,必须看到你这些文件的目录树才行。

授人以渔,不授人以鱼。
2013-01-16 14:10
chrisli
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2013-1-16
收藏
得分:0 
请问能把文件发给你帮我看看不,我是营销专业的,做这个课程实习,老师也没讲呀。自己看书,学着做的!
2013-01-16 14:16
taifu945
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:80
帖 子:1545
专家分:3298
注 册:2012-7-6
收藏
得分:0 
以下是引用chrisli在2013-1-16 13:59:05的发言:

我刚刚试了,加到了主程序里面,把选项里面的文件位置的默认目录还有搜索路径也改为了空的,连编后,exe文件都运行不了
项目里的文件默认目录和搜索路径一定要清空。然后把主程序放在一级目录里,也就是“.\”;把sysuser.dbf文件放在主程序所在目录下的“\sysuser”中,就可以了。正如邓版说的,你可能没搞清楚路径引用的原理。
2013-01-16 14:17
快速回复:关于运行程序弹出程序错误对话框的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.044204 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved