Q&A

  • 소켓 통신 tcp/ip
제가 구현 하려 가는 것은

서버소켓과 클라이어트 소켓을 가지고 서로 교신을 하는 것입니다.



전송하는 타입의 형태는 레코드 형이면 좋겠습니다.

제가 2주일째 테스트를 하고 있는데.

SendText를 가지고는 레코드형을 보낼수 없드라구요

SendText는 string만 전송이 되는 것 같구요.



예를 들어 65 + 'leewha' 이러한 것을 보내려고 하거든요..

65는 byte형이구요.

그래서 65를 char(65) 하니 'A' 로 치환이 되더라구요...

너무나 기뿐 마음에 이번엔 다시 'A'를 integer('A') 하니 65가 나왔습니다.

이때 모든 것이 해결 되었나 싶었는데 이번에는

(보내는 형이 숫자형이 많아 그것을 그대로 보내면 전송량이 많을것 같아..

문자로 변환한 다음 보내려고 하거든요.)

var

mm :string;

mm1:string;

mm2:byte;

이렇게 선언을 하고

mm2:=65;

mm1:='leewha'

mm:= char(65) + mm1;

이렇게 하니

mm의 내용은 Aleewha 이렇게 들어갔습니다.

그래서 이번엔 잘 쓰지 않는 char(135) 하니 □ 이러한 문자가 나옴니다.

그것을 다시 integer(char(135))하니 다시 135가 나왔습니다.

그래서 이것을 합치니 '혓eewha' 이렇게 처음 문자가 이상하게 변했더라구요.

합하면 이렇게 될수 있겠구나 해서 이번에는 문자를 짤라 봤습니다.

copy(mm,2,6) 이렇게 하면 다시 'leewha'가 나오거든요..

var

mm3:string;

mm3=copy(mm,1,1) 해서 integer로 변환을 하면 240이란 글자가 나오더라구요

이것은 아마 string과 char의 형의 불일치인것 같은데...

string과 char의 형변환을 알고 싶거든요...-----------------------(1)'

'leewha' 스트링을 한글자 한글자시 char[1].char[2].... 이렇게 넣을수 있는지..

또한 반대로도 될수 있는지....



아래와 같은 것도 있는것 같은데...

clientSocket1.sendstream(s);



\

procedure TForm1.Button2Click(Sender: TObject);

var

juso:Jusorec;

s : TMemoryStream;



begin

s := TMemoryStream.Create;

juso.age := 65; //F001이 메시지라는 암암리의 약정을...

juso.name := '이화';

s.Write(juso,sizeof(juso));

//ServerSocket1.Socket.SendStream(s);

clientSocket1.Socket.sendstream(s);

end;



\\



이렇게 전송을 했는데

서버소켓에서는 아무른 이벤트가 일어나지 않았거든요...

어떠한것을 써야 이벤트가 발생되는건지 알고 싶습니다. -----------(2)



서버소켓에서 구체적으로 처리하는 방법까지 가르쳐 주시면 좋구요 ---(3)



마지막으로.. 클라이언트 소켓은 서버로 보내고 내용을 받은 서버는

내용에 따라 모든 클라이언트에게 보낼 것인지 아니면 일부 또는 한명

에게 보내야 되는 것인지 결정을 해야 하거든요.



서버에서 이러한 방법을 이용하면 아래와 같은 내용으로는 해결되는데....



procedure TForm1.ServerSocket1ClientRead(Sender: TObject;

Socket: TCustomWinSocket);

var

str:string;

m:integer;

begin



str:=socket.ReceiveText;

Memo1.lines.add(str);

for m:=0 to i - 1 do

begin

ServerSocket1.Socket.Connections[m].SendText(str);

end;

end;







다음의 방법을 이용하면 어떻게 구현 하는지...

clientSocket1.sendstream(s);

이것을 이용해서 위와 같이 구현할수 있느지요 ---------------(4)



고수님들 부탁 합니다....



lee_wha@hanmail.net



5  COMMENTS
  • Profile
    박서규 2000.08.02 04:29
    이화 wrote:

    > 제가 구현 하려 가는 것은

    > 서버소켓과 클라이어트 소켓을 가지고 서로 교신을 하는 것입니다.

    >

    > 전송하는 타입의 형태는 레코드 형이면 좋겠습니다.

    > 제가 2주일째 테스트를 하고 있는데.

    > SendText를 가지고는 레코드형을 보낼수 없드라구요

    > SendText는 string만 전송이 되는 것 같구요.

    >

    > 예를 들어 65 + 'leewha' 이러한 것을 보내려고 하거든요..

    > 65는 byte형이구요.

    > 그래서 65를 char(65) 하니 'A' 로 치환이 되더라구요...

    > 너무나 기뿐 마음에 이번엔 다시 'A'를 integer('A') 하니 65가 나왔습니다.

    > 이때 모든 것이 해결 되었나 싶었는데 이번에는

    > (보내는 형이 숫자형이 많아 그것을 그대로 보내면 전송량이 많을것 같아..

    > 문자로 변환한 다음 보내려고 하거든요.)

    > var

    > mm :string;

    > mm1:string;

    > mm2:byte;

    > 이렇게 선언을 하고

    > mm2:=65;

    > mm1:='leewha'

    > mm:= char(65) + mm1;

    > 이렇게 하니

    > mm의 내용은 Aleewha 이렇게 들어갔습니다.

    > 그래서 이번엔 잘 쓰지 않는 char(135) 하니 □ 이러한 문자가 나옴니다.

    > 그것을 다시 integer(char(135))하니 다시 135가 나왔습니다.

    > 그래서 이것을 합치니 '혓eewha' 이렇게 처음 문자가 이상하게 변했더라구요.

    > 합하면 이렇게 될수 있겠구나 해서 이번에는 문자를 짤라 봤습니다.

    > copy(mm,2,6) 이렇게 하면 다시 'leewha'가 나오거든요..

    > var

    > mm3:string;

    > mm3=copy(mm,1,1) 해서 integer로 변환을 하면 240이란 글자가 나오더라구요

    > 이것은 아마 string과 char의 형의 불일치인것 같은데...

    > string과 char의 형변환을 알고 싶거든요...-----------------------(1)'

    > 'leewha' 스트링을 한글자 한글자시 char[1].char[2].... 이렇게 넣을수 있는지..

    > 또한 반대로도 될수 있는지....

    >

    > 아래와 같은 것도 있는것 같은데...

    > clientSocket1.sendstream(s);

    >

    > \

    > procedure TForm1.Button2Click(Sender: TObject);

    > var

    > juso:Jusorec;

    > s : TMemoryStream;

    >

    > begin

    > s := TMemoryStream.Create;

    > juso.age := 65; //F001이 메시지라는 암암리의 약정을...

    > juso.name := '이화';

    > s.Write(juso,sizeof(juso));

    > //ServerSocket1.Socket.SendStream(s);

    > clientSocket1.Socket.sendstream(s);

    > end;

    >

    > \\

    >

    > 이렇게 전송을 했는데

    > 서버소켓에서는 아무른 이벤트가 일어나지 않았거든요...

    > 어떠한것을 써야 이벤트가 발생되는건지 알고 싶습니다. -----------(2)

    >

    > 서버소켓에서 구체적으로 처리하는 방법까지 가르쳐 주시면 좋구요 ---(3)

    >

    > 마지막으로.. 클라이언트 소켓은 서버로 보내고 내용을 받은 서버는

    > 내용에 따라 모든 클라이언트에게 보낼 것인지 아니면 일부 또는 한명

    > 에게 보내야 되는 것인지 결정을 해야 하거든요.

    >

    > 서버에서 이러한 방법을 이용하면 아래와 같은 내용으로는 해결되는데....

    >

    > procedure TForm1.ServerSocket1ClientRead(Sender: TObject;

    > Socket: TCustomWinSocket);

    > var

    > str:string;

    > m:integer;

    > begin

    >

    > str:=socket.ReceiveText;

    > Memo1.lines.add(str);

    > for m:=0 to i - 1 do

    > begin

    > ServerSocket1.Socket.Connections[m].SendText(str);

    > end;

    > end;

    >

    >

    >

    > 다음의 방법을 이용하면 어떻게 구현 하는지...

    > clientSocket1.sendstream(s);

    > 이것을 이용해서 위와 같이 구현할수 있느지요 ---------------(4)

    >

    > 고수님들 부탁 합니다....

    >

    > lee_wha@hanmail.net

    >



    안녕하세요.. 박서규입니다.

    스트림을 보내기전에 position을 0으로 셋팅하세요...그러면 이벤트가 짱...

    그리고 텍스트를 잘라서 하시는 방법은 위험해서 권하지 않는 방법이구요..

    이게 어떨까요..



    type

    Packet = record

    messagetype : string[2];

    data : array[0..999] of char;

    end;

    cont

    mtText = $FF00;

    mtData = $FF01;





    데이터를 보낼려면...

    var

    p : Packet;

    s : TMemoryStream;

    begin

    p.MessageType := intTohex(mtText,2);

    p.Data에 자료 넣으시고...



    요걸 위의것처럼 스트림에 넣어서 보내시면 됩니다..

    받는측에서는 다시 구조체에 넣다가 빼면 되거든요..



    도움이 되셨는지...

  • Profile
    구창민 2000.08.01 21:45
    이화 wrote:

    > 제가 구현 하려 가는 것은

    > 서버소켓과 클라이어트 소켓을 가지고 서로 교신을 하는 것입니다.

    >

    > 전송하는 타입의 형태는 레코드 형이면 좋겠습니다.

    > 제가 2주일째 테스트를 하고 있는데.

    > SendText를 가지고는 레코드형을 보낼수 없드라구요

    > SendText는 string만 전송이 되는 것 같구요.

    >

    > 예를 들어 65 + 'leewha' 이러한 것을 보내려고 하거든요..

    > 65는 byte형이구요.

    > 그래서 65를 char(65) 하니 'A' 로 치환이 되더라구요...

    > 너무나 기뿐 마음에 이번엔 다시 'A'를 integer('A') 하니 65가 나왔습니다.

    > 이때 모든 것이 해결 되었나 싶었는데 이번에는

    > (보내는 형이 숫자형이 많아 그것을 그대로 보내면 전송량이 많을것 같아..

    > 문자로 변환한 다음 보내려고 하거든요.)

    > var

    > mm :string;

    > mm1:string;

    > mm2:byte;

    > 이렇게 선언을 하고

    > mm2:=65;

    > mm1:='leewha'

    > mm:= char(65) + mm1;

    > 이렇게 하니

    > mm의 내용은 Aleewha 이렇게 들어갔습니다.

    > 그래서 이번엔 잘 쓰지 않는 char(135) 하니 □ 이러한 문자가 나옴니다.

    > 그것을 다시 integer(char(135))하니 다시 135가 나왔습니다.

    > 그래서 이것을 합치니 '혓eewha' 이렇게 처음 문자가 이상하게 변했더라구요.

    > 합하면 이렇게 될수 있겠구나 해서 이번에는 문자를 짤라 봤습니다.

    > copy(mm,2,6) 이렇게 하면 다시 'leewha'가 나오거든요..

    > var

    > mm3:string;

    > mm3=copy(mm,1,1) 해서 integer로 변환을 하면 240이란 글자가 나오더라구요

    > 이것은 아마 string과 char의 형의 불일치인것 같은데...

    > string과 char의 형변환을 알고 싶거든요...-----------------------(1)'

    > 'leewha' 스트링을 한글자 한글자시 char[1].char[2].... 이렇게 넣을수 있는지..

    > 또한 반대로도 될수 있는지....

    >

    > 아래와 같은 것도 있는것 같은데...

    > clientSocket1.sendstream(s);

    >

    > \

    > procedure TForm1.Button2Click(Sender: TObject);

    > var

    > juso:Jusorec;

    > s : TMemoryStream;

    >

    > begin

    > s := TMemoryStream.Create;

    > juso.age := 65; //F001이 메시지라는 암암리의 약정을...

    > juso.name := '이화';

    > s.Write(juso,sizeof(juso));

    > //ServerSocket1.Socket.SendStream(s);

    > clientSocket1.Socket.sendstream(s);

    > end;

    >

    > \\

    >

    > 이렇게 전송을 했는데

    > 서버소켓에서는 아무른 이벤트가 일어나지 않았거든요...

    > 어떠한것을 써야 이벤트가 발생되는건지 알고 싶습니다. -----------(2)

    >

    > 서버소켓에서 구체적으로 처리하는 방법까지 가르쳐 주시면 좋구요 ---(3)

    >

    > 마지막으로.. 클라이언트 소켓은 서버로 보내고 내용을 받은 서버는

    > 내용에 따라 모든 클라이언트에게 보낼 것인지 아니면 일부 또는 한명

    > 에게 보내야 되는 것인지 결정을 해야 하거든요.

    >

    > 서버에서 이러한 방법을 이용하면 아래와 같은 내용으로는 해결되는데....

    >

    > procedure TForm1.ServerSocket1ClientRead(Sender: TObject;

    > Socket: TCustomWinSocket);

    > var

    > str:string;

    > m:integer;

    > begin

    >

    > str:=socket.ReceiveText;

    > Memo1.lines.add(str);

    > for m:=0 to i - 1 do

    > begin

    > ServerSocket1.Socket.Connections[m].SendText(str);

    > end;

    > end;

    >

    >

    >

    > 다음의 방법을 이용하면 어떻게 구현 하는지...

    > clientSocket1.sendstream(s);

    > 이것을 이용해서 위와 같이 구현할수 있느지요 ---------------(4)

    >

    > 고수님들 부탁 합니다....

    >

    > lee_wha@hanmail.net

    >





    문자를 아스키값으로, 아스키 값을 문자로 바꾸는 예를 들겠습니다.



    var i: integer;

    Ch: Char;

    begin

    Ch:= 'A';

    i:= Ord(Ch); //문자 'A'의 아스키 값 65를 구해낸다.

    ShowMessage(IntToStr(i));



    Ch:= Chr(i); //숫자 65의 문자값 'A'를 구해낸다.

    ShowMessage(Ch);

    end;



    참고로, 수치형문자는 48을 더한뒤 Chr()함수를 써서 바꾸면 됩니다.

    역순도 마찬가지겠지요.

    그런뒤 문자를 더한다음 Socket.SendText(문자) 이렇게 보내고,

    전송된 문자열을 잘라서 다시 구조체로 변환하시면 되겠네요~



    그럼 즐거운 프로그래밍 되시길~

  • Profile
    이화 2000.08.01 23:45
    >

    >

    > 문자를 아스키값으로, 아스키 값을 문자로 바꾸는 예를 들겠습니다.

    >

    > var i: integer;

    > Ch: Char;

    > begin

    > Ch:= 'A';

    > i:= Ord(Ch); //문자 'A'의 아스키 값 65를 구해낸다.

    > ShowMessage(IntToStr(i));

    >

    > Ch:= Chr(i); //숫자 65의 문자값 'A'를 구해낸다.

    > ShowMessage(Ch);

    > end;

    >

    > 참고로, 수치형문자는 48을 더한뒤 Chr()함수를 써서 바꾸면 됩니다.

    > 역순도 마찬가지겠지요.

    > 그런뒤 문자를 더한다음 Socket.SendText(문자) 이렇게 보내고,

    > 전송된 문자열을 잘라서 다시 구조체로 변환하시면 되겠네요~

    >

    > 그럼 즐거운 프로그래밍 되시길~



    다신 질문 드립니다.

    클라이어트쪽에서 수신 받은 data가 'Aleewha'인데...

    'A'를 어떻게 짤라내죠...

    var

    str : string;

    code_num : char;

    begin

    str := socket.ReceiveText;

    code_num := copy(str,1,1); // 이렇게 하면 형이 틀려 에러가 나거든요.

    end;



    code_num을 가지고 뒤의 data를 판별해야 되는데...

    첫번째 스트링을 다시 char형을 어떻게 바꾸죠..



    부탁 합니다...

    스트링을 ---> char형 또는 char 배열형으로 바꾸는 방법을

    아시는 고수님 가르쳐 주세요...?



    lee_wha@hanmail.net



  • Profile
    Hoon Reader 2000.08.07 08:53


    String과 char은 분명이 다른 Type이며 다른 개념입니다.

    String은 어렵게 생각할 것 없이 char의 배열이라 생각하면됩니다.

    즉 String[10]으로 선언한 것은 array[1..10] of char과 같습니다.



    Copy같은 함수는 String을 return 합니다.

    그래서 XX := Copy(...)와 같이 사용할려면 XX는 당연히 String 타입이어야합니다.

    대체로 초보자들이 착각하는건 String[1]을 Char과 혼동하는 것입니다.

    하나의 문자만을 가지더라도 배열은 배열이고 문자는 문자입니다.

    즉 array[1..1] of char는 비록 하나의 문자만을 가지지만 char와는 다른겁니다.

    Copy에서 단 하나의 문자만 추출하더라도 그건 분명 String이라는 말이죠.



    그리고, String을 다룰때도 편한하게 다루는 방법이 있습니다.

    String은 위에서 언급했다시피 Index 1부터 시작합니다. 참고로 이것은 Object Pascal에 PChar가 있는 이유이기도 합니다. PChar는 C에서 사용하는 Null Terminator형 (char*)에 대응되죠.



    [String 다루는 예제]



    St : string;

    Ch : char;

    ....

    St := 'This is String';

    Ch := St[10];

    St[3] := 'X';

    Write(St[1]); // 'T'

    Write(Ch); // 't'

    Write(St); // 'ThXs is String'

    ...



    OK?

    원리를 알면 모든게 쉽습니다.



  • Profile
    최용일 2000.08.02 00:03
    안녕하세요. 최용일입니다.



    구창민님은 아니지만 답변해 드리겠습니다. 아주 간단한 것이니까요...



    code_num := str[1];



    ^^ 항상 즐코하세요.



    이화 wrote:

    > >

    > >

    > > 문자를 아스키값으로, 아스키 값을 문자로 바꾸는 예를 들겠습니다.

    > >

    > > var i: integer;

    > > Ch: Char;

    > > begin

    > > Ch:= 'A';

    > > i:= Ord(Ch); //문자 'A'의 아스키 값 65를 구해낸다.

    > > ShowMessage(IntToStr(i));

    > >

    > > Ch:= Chr(i); //숫자 65의 문자값 'A'를 구해낸다.

    > > ShowMessage(Ch);

    > > end;

    > >

    > > 참고로, 수치형문자는 48을 더한뒤 Chr()함수를 써서 바꾸면 됩니다.

    > > 역순도 마찬가지겠지요.

    > > 그런뒤 문자를 더한다음 Socket.SendText(문자) 이렇게 보내고,

    > > 전송된 문자열을 잘라서 다시 구조체로 변환하시면 되겠네요~

    > >

    > > 그럼 즐거운 프로그래밍 되시길~

    >

    > 다신 질문 드립니다.

    > 클라이어트쪽에서 수신 받은 data가 'Aleewha'인데...

    > 'A'를 어떻게 짤라내죠...

    > var

    > str : string;

    > code_num : char;

    > begin

    > str := socket.ReceiveText;

    > code_num := copy(str,1,1); // 이렇게 하면 형이 틀려 에러가 나거든요.

    > end;

    >

    > code_num을 가지고 뒤의 data를 판별해야 되는데...

    > 첫번째 스트링을 다시 char형을 어떻게 바꾸죠..

    >

    > 부탁 합니다...

    > 스트링을 ---> char형 또는 char 배열형으로 바꾸는 방법을

    > 아시는 고수님 가르쳐 주세요...?

    >

    > lee_wha@hanmail.net

    >

    • 찾는이
    • 2000.08.01 21:56
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 4master
      2000.08.02 05:35
      찾는이 wrote: > 클라이언트에서 Sendtext()텍스트문자를 보내는데..한 폼안에서 하나는 서버로 하나는 클...
    • siro
    • 2000.08.01 20:56
    • 0 COMMENTS
    • /
    • 0 LIKES
    • siro
      2000.08.01 20:59
      신현길 wrote: > edit컴포넌트에서 숫자만 입력받고 문자를 입력하면 에러메세지를 보낼수 있는 방법을 >...
    • 방석호
      2000.08.01 21:56
      안녕하세요.. 예전에 mask edit를 사용하다 낭패를 본일이 있어서요... mask edit에 스페이스 바나 소수...
    • 한상훈
    • 2000.08.01 20:50
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 최용일
      2000.08.01 21:42
      안녕하세요. 최용일입니다. 아래와 같이 포커스를 다시 되돌리면 됩니다. NewForm.show; SetFoc...
    • 김봉준
    • 2000.08.01 20:39
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 최용일
      2000.08.01 21:08
      안녕하세요. 최용일입니다. 그것은 델파이의 메모컴포넌트가 자료들을 널종료문자열형태로 다루기 때문...
    • 이화
    • 2000.08.01 20:15
    • 5 COMMENTS
    • /
    • 1 LIKES
    • 박서규
      2000.08.02 04:29
      이화 wrote: > 제가 구현 하려 가는 것은 > 서버소켓과 클라이어트 소켓을 가지고 서로 교신을 하는 것입...
    • 구창민
      2000.08.01 21:45
      이화 wrote: > 제가 구현 하려 가는 것은 > 서버소켓과 클라이어트 소켓을 가지고 서로 교신을 하는 것입...
    • 이화
      2000.08.01 23:45
      > > > 문자를 아스키값으로, 아스키 값을 문자로 바꾸는 예를 들겠습니다. > > var i: integer; > ...
    • Hoon Reader
      2000.08.07 08:53
      String과 char은 분명이 다른 Type이며 다른 개념입니다. String은 어렵게 생각할 것 없이 char의 배열...
    • 최용일
      2000.08.02 00:03
      안녕하세요. 최용일입니다. 구창민님은 아니지만 답변해 드리겠습니다. 아주 간단한 것이니까요... c...
    • 아리엘
    • 2000.08.01 19:47
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 최용일
      2000.08.01 20:25
      안녕하세요. 최용일입니다. 그냥 단순 무식하게 for문을 사용하세요. 여러개를 검색해야 할테니까 근접...
    • leopard
    • 2000.08.01 18:01
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 까마귀
      2000.08.01 19:30
      leopard wrote: > > 프로그램을 막 배운 새내기입니다. 알듯하면서도 모르겠군요. 지금 열심히 배우고...
    • 김명호
    • 2000.08.01 17:38
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 최석기
      2000.08.01 19:26
      김명호 wrote: > 정전이나 강제 종료하면 디비가 저장되지 않습니다. > 인서트할때마다 강제저장을 시키...
    • 허춘
      2000.08.01 12:50
      이병돈 wrote: > > mdi form을 처음 사용하는데요.. > > 프로젝트 만들때 main form 이랑 child fo...
    • 이병돈
      2000.08.01 21:13
      도움말 감사합니다.. 근데 available mdi child form이 여러개인데 이중에서특정 form을 호출할려구 하면 ...
    • 이흥만
      2000.08.02 00:08
      이병돈 wrote: > 도움말 감사합니다.. > 근데 available mdi child form이 여러개인데 이중에서특정 form...
    • 한대필
    • 2000.08.01 09:15
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 조규춘
      2000.08.01 12:10
      한대필 wrote: > * 사용환경 : 델파이5 / Windows 98 > > 안녕하세요? 반갑습니다. > > 질문이 있습...
    • 방석호
      2000.08.01 22:11
      한미르 wrote: > 데이타 베이스를 시작한지 얼마 안된 정말.....초보임다.... > Access테이블을 ODBC로 ...
    • 한미르
      2000.08.02 02:33
      안녕하세엽... 방석호님..!! 도움 주셔서 감사함다...!! 방석호님두..좋은하루 되시구요..!!
    • 강덕원
    • 2000.08.01 08:27
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 조규춘
      2000.08.01 08:43
      강덕원 wrote: > 단순히 작업표시줄에 안보이는 프로그램을 만들기위해 아래와 같이 코딩을 했는데요... ...
    • 최용일
      2000.08.01 21:14
      안녕하세요. 최용일입니다. 제대로 다 했다면 속성창의 이벤트탭에서 TForm1의 OnCreate이벤트가 FormCr...
    • 왕초보
    • 2000.08.01 07:12
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 최용일
      2000.08.01 21:17
      안녕하세요. 최용일입니다. 거기에서 다시 Show하면 나타납니다. ^^ 항상 즐코하세요. 왕초보 wro...
    • 왕초보
      2000.08.01 21:57
      글쎄요.. 무슨 말씀이신지 모르겠네요.... show라는 버튼같은 것은 없는데요... 있을 법한데 말이에요.....
    • 최용일
      2000.08.01 22:30
      안녕하세요. 최용일입니다. Palette Property에서 왼쪽의 Pages탭 맨 끝에 보시면 [All]이란 페이지가 ...
    • 노을
      2000.08.02 18:51
      안녕하세요 노 을 입니다. 그런 경우는 훅킹써야 할듯.. 훅킹에 대해서는 강좌들을 참조하세요 ^^......
    • 이발사
      2000.08.04 01:14
      이재광 wrote: > 안녕하세요 고수님들 더운데 수고가 많으십니다. > > 지금 TPrinter를 이용해서 출력...