Q&A

  • VB로 만든..소켓클라이언트에서 날린 메세지를 받기~~
VB로 만든(더 정확히 말하면 embedded vb임)클라이언트에서
winsock.senddata(문자열)  이렇게 보낸 메세지를
델파이로 짠(indy사용)서버에서
ServerExecute이벤트에서 revstr := AThread.Connection.Readln; 이런식으로 받을려고하는데..도대체..반응이 없네요.. ㅡ.ㅡ;;
이것때문에...2틀동안.별짓을 다해봐도.안돼네요...고수님의 도움을 간절히 원함다~~
readln다음에..무슨 파라미터를 줘야되나요?
3  COMMENTS
  • Profile
    최용일 2003.08.26 20:19
    안녕하세요. 최용일입니다.

    VB를 잘몰라서 정확한 것은 아닌데...

    인디의 ReadLn은 캐리지 리턴이 나올때까지 기달려서 읽거든요...

    VB에서 문자열 보낼때 끝에 캐리지리턴을 넣어보세요...

    ^^ 항상 즐코하세요...

  • Profile
    신승욱 2003.08.27 00:13
    답변감사합니다....아직 해보진 않았지만..그문제인것같네요..
    전..역시..생각이 짧네요.. ㅡ.ㅡ;;;
    한가지만..더 물어볼께요...
    현재 VB로..소켓서버,클라이언트가..구현되어있는데..VB에서 쓰레드지원이 거의 지원이 안돼서 소켓서버를 델파이로..다시할려는거거든요..
    문제가 돼는게 클라이언트소켓에서 받는 메세지가...MS-sql로 쿼리를 날리는 쿼리 문자열입니다..그래서 소켓서버에서 메세지를 받아서 데이타서버로 쿼리문을 날리고...쿼리값을 다시 클라이언트로 넘겨주는 구조인데요..
    현재 2개의 클라이언트가..동시에 메세지(쿼리문자열)을 날리면...동시에 답이 오는게 아니라..하나끝이나야(끝날때까지..다른한대는 대기) 다른 쿼리문이 발생하고..그러거든요....이럴꺼면..2대를 왜써...하고 저한테 말하네요 ㅡ.ㅡ;;
    구래서..이걸..델파이인디컴포가.쓰레드로 작동하는것같아서..인디로 바꿀려고하는거거든요...인디로..소켓서버를 만들면...해결돼는건지...아니면..
    인디로 만들더라고..쿼리질의응답루틴을 따로..쓰레드처리해줘야돼는지요..
    수고스럽지만..한번만더~~~
  • Profile
    최용일 2003.08.27 00:54
    안녕하세요. 최용일입니다.

    소켓서버문제가 아니라 데이터서버문제인거 같은데요...

    데이터 서버에서 한번에 하나의 쿼리밖에 실행을 못하는것 같은데...

    데이터 서버에서 받는 쿼리문을 쓰레드나 풀링개념을 이용해서 동시에 여러개의 쿼리문을 실행할 수 있도록 바꾸시면 될것같습니다.

    ^^ 항상 즐코하세요...