그림파일에 대해 많은 글들을 봤습니다.
최용일님께서 쓰신글중에 아래와 같은 글이 있더군요
[원격지에 있는 직접 여는 방법은 없습니다.
어떤식으로든지 다운을 받아서 열어야 합니다.
그게 메모리든 파일이든... 같은 네트웍이라면 모르지만...]
그래서~ 원격지는 포기했습니다.
그런데 =>> "같은 네트웍이라면 모르지만"
이부분을 듣고나서 한번 구현해볼려고하는데 ~
저의 미천한 실력으로는 잘 되지 않는군요
같은 네트웍에 있는 파일을 가져올려면 어떻게 해야되는지
좀 알려주세요`~ 부탁드리겠습니다.
본의 아니게 질/답에 문의가 자주오는 관계로 이렇게 글 을올립니다.
* 제목 : 원격 서버의 이미지 읽어와서 보여주기
서버는 Windows 계열 (NT 겠죠...) 입니다. ^^;;
내용은 허접합니다만 이해해주세요...^^
타락님이 코드 보면 욕할지 모르겠네...^^;;
참고로 님들이 보시기에 편한 코딩으로 했습니다.
Function FA_NMFTP(NMFTP :TNMFTP):boolean;
begin
NMFTP.Host := ''; <===== 호스트 IP주소
NMFTP.TimeOut := 20000;
NMFTP.UserID := ''; <===== 호스트 ID
NMFTP.Password:= ''; <====== 호스트 패스워드
try
NMFTP.Connect;
except
On E:Exception do
begin
ShowMessage ('서버 연결에 실패하였습니다.');
Result := False;
exit;
end;
end;
Result := True;
end;
이렇게 일단 서버에 Connect를 합니다.
그런다음 서버의 특정 폴더에서 가지고 오면 되겠져...^^
file_name은 조합해서 만들거나 먼저 알고 있겠죠...^^
if FA_NMFTP(NMFTP_Dir) = true then // 서버연결후 디렉토리 검사 목적...
begin
NMFTP_Dir.ChangeDir(Dir_name); <--- Dir_name는 서버에 이미지가 위치하고 있는 경로 입니다.
Try
// 그런 다음 서버에서 그림파일을 C:Jpg_temp 요 폴더에 화일을 가지고 옵니다.
NMFTP_Dir.Download(file_name, 'c:Jpg_temp' + file_name);
// 그런 다음 디렉토리을 바꿔주고...
SetCurrentDir('c:Jpg_temp');
// 그림 파일이 JPG이기 때문에 Jpeg를 열어 놓습니다.
JPEGIMAGE := TJPEGImage.Create;
try
JPEGIMAGE.LoadFromFile(file_name);
Image1.Picture.Graphic := JPEGIMAGE;
Image1.Stretch := True;
finally
JPEGIMAGE.Free;
end;
except
On E:Exception do
begin
with image1 do
begin
Left := 0;
Width := 1047;
end;
Qr_null.Caption := '그림 파일이 존재하지 않습니다..!';
end;
end;
end;
end;
이렇게 하시면 원격으로 서버에 붙어서 실시간으로 그림파일을 가지고 올수 있습니다.
내용이 허접 했죠...^^
사실 알고보면 그리 어려운내용이 아닙니다.
그럼 즐코하세요...