다음과 같이 프로그램을 작성하였답니다.
procedure TForm1.Change_ButtonClick(Sender: TObject);
var
FileName:String;
i:Integer;
begin
for i:= 0 to 2 do
begin
FileName := IntToStr(i);
WinExec('a.exe '+'FileName', SW_SHOW);
end;
end;
그런데 여기서 FileName에 해당하는 부분을 변수화해서
반복문 상에서 바꾸어 가면서 처리를 해야 하는데...
처음 FileName이 계속 유지가 되는지 결과가 예상과는 다르게
하나밖에 나오지 않더라구요.
실행은 반복횟수만큼 되는데 ''내의 FileName이 동일하게 적용이 되는지
같은 이름의 결과가 계속된답니다.
반복루프 내에서 변수가 바뀌는 것까지 확인을 했는데 왜 동일한 결과가
반복될까요?
어떻게 하면 해결할 수 있나요?
전에 하신건 결과가..
a.exe FileName
a.exe FileName
a.exe FileName
WinExec('a.exe '+ IntToStr(i), SW_SHOW);
위와같이 하면 결과는
a.exe 0
a.exe 1
a.exe 2
황하성 께서 말씀하시기를...
> 다음과 같이 프로그램을 작성하였답니다.
>
> procedure TForm1.Change_ButtonClick(Sender: TObject);
> var
> FileName:String;
> i:Integer;
> begin
> for i:= 0 to 2 do
> begin
> FileName := IntToStr(i);
> WinExec('a.exe '+'FileName', SW_SHOW);
> end;
> end;
>
> 그런데 여기서 FileName에 해당하는 부분을 변수화해서
> 반복문 상에서 바꾸어 가면서 처리를 해야 하는데...
> 처음 FileName이 계속 유지가 되는지 결과가 예상과는 다르게
> 하나밖에 나오지 않더라구요.
> 실행은 반복횟수만큼 되는데 ''내의 FileName이 동일하게 적용이 되는지
> 같은 이름의 결과가 계속된답니다.
> 반복루프 내에서 변수가 바뀌는 것까지 확인을 했는데 왜 동일한 결과가
> 반복될까요?
> 어떻게 하면 해결할 수 있나요?
>