神啊,救救我吧!(0分)

  • 主题发起人 主题发起人 big_brian
  • 开始时间 开始时间
B

big_brian

Unregistered / Unconfirmed
GUEST, unregistred user!
神啊,救救我吧!
我在程序中使用如下代码,却有I/O 103 Error
procedure TFrmmain.SpeedButton3Click(Sender: TObject);
//文件操作题的初始化功能函数,要求:下试题,保存试题,初始化考试环境。
//若考生文件操作状态为0,则下载考试试题,初始化考试环境,建立考生需要的子文件夹。
//下载下来的文件应该保存到考生考号文件夹下。
//使用的常量
// wjcz_que_fn:定义于KsSysInfo.Pas,为文件操作题的试卷(包括答案)文件名.
//
var
ksdirname:string;
wjczansfn:string; //试题文件名。
wjczquefn:string;
p_czlx,p_soudir,p_desdir,p_soufn,p_ksxm:string;
wjtfile:TextFile;
s1:String;
begin
{若考生文件操作状态为0,则下载考试试题,初始化考试环境,建立考生需要的子文件夹。}
if(StuInfoRec.WJZT=0) then
begin
{下载试卷到考试文件夹下的考号子文件夹下}
GetKsDirectory(ksdirname);
ksdirname:=ksdirname+'/'+StuInfoRec.KSKH;
wjczansfn:=ksdirname+'/'+wjcz_ans_fn;
DCOMConnection_shijuan.Connected:=true;
ClientDataSet_shijuan.ProviderName:=shijuan_dataprovide;
//上传考生的考号与试题的题号
DCOMConnection_shijuan.AppServer.set_table_info(2,StuInfoRec.KSKH );
ClientDataSet_shijuan.Active:=true;
ClientDataSet_shijuan.SaveToFile(wjczansfn);
{初始化考试环境}
ClientDataSet_Shijuan.First;
p_ksxm:=StuInfoRec.KSXM;
while not ClientDataSet_shijuan.Eof do
begin
{对每一项进行初始化}
p_czlx:=ClientDataSet_shijuan.FieldByName('czlx').AsString ;
p_soudir:=ClientDataSet_shijuan.FieldByName('soudir').AsString;
p_desdir:=ClientDataSet_shijuan.FieldByName('DESDIR').AsString;;
p_soufn:=ClientDataSet_shijuan.FieldByName('soufn').AsString;
wjtinital(p_czlx,p_soudir,p_desdir,p_soufn,p_ksxm);
ClientDataSet_shijuan.Next;
end;
{文件名初始化准备!}
wjczquefn:=ksdirname+'/'+wjcz_que_fn;
try
AssignFile(wjtfile,wjczquefn);
ReWrite(wjtfile); 在此处出错 错误为无法打开文件之类得I/O 183 error
ClientDataSet_shijuan.First;
While not ClientDataSet_shijuan.Eof do
begin
{将试题内容写入文件操作题得试卷文件中(wjczquefn)}
s1:=inttostr(ClientDataSet_shijuan.FieldValues['sth']);
s1:='第'+s1+'题';
writeln(wjtfile,s1);
writeln(wjtfile,ClientDataSet_shijuan.FieldValues['stnr']);
ClientDataSet_shijuan.Next;
end;
finally
CloseFile(wjtfile);
end;
ClientDataSet_shijuan.Active:=False;
DCOMConnection_shijuan.Connected:=False;
StuInfoRec.WJZT:=1;
Write_StudentRecord(StuInfoRec,whole_stufilename);
end;
hide;
frmdir.Show;
end;
 
后退
顶部