델파이에 관한 이야기는 아닙니다만, 프로그래밍에 관한 내용이므로 이곳이 좀 더 적합한 것으로 생각되어 이곳에 올립니다
저는 MFC로 윈속 프로그래밍을 하고 있습니다.
간단한 데이터를 주고 받기 위해서 VC에 제공되는 채팅 예제를 개조하여
TCP로 통신하는 프로그램을 만들었습니다.
A 회사(서울)에서 B회사(안양) 간에는 접속이 잘되어 빠른 속도로 데이타 통신에 성공했습니다. (A회사, B회사는 자매회사이어서 네트웍을 같이 사용하는 것으로 알고 있습니다) 그런데 C라는 전혀 다른 그룹의 회사(서울)로 보내려니 쌍방이 다 접속이 안되더군요. (한참을 접속하려다 Connection Timeout에러를 내는듯) VC에 제공되는 예제 역시 마찬가지 결과를 보여주는 것으로 보아 제가 개조한 부분이 문제는 아닌것 같군요.
그래서 액티브 팝업을 받아 설치하고 전송해보니 C에서 A로는 전송이 되는데,
(접속하는데 오래걸리지 않는듯 합니다) A에서 C로는 전송이 되지 않더군요.
특이한건 C사의 친구 IP는 150....으로 시작 된다고 이야기 하는데
도착한 메세지를 보면 203...으로 나온다는 것입니다.
1. 우선 C사의 IP 구조가 어떤 것인지 궁금하구요.
2. 다음 VC 예제에서도 C>A 접속이 안되는 것이 액티브 팝업에서는 잘되는 비결이 무엇인지 궁금합니다. 특별히 강화한 부분이 있는지 아니면 비동기모드의 장점인지 궁금합니다.
아시는 문제라면 답변이나 간단한 참조 문헌을 알려 주시면 대단히 감사하겠습니다
3. 그리고 UDP를 시도중인데, 예제들을 보면 RecvFrom을 무한 루프로 돌리게 되어 있더군요. 무시하고 한번만 받는 것으로 해보니 안되더군요. 빠른 속도로 계속 RecvFrom을 실행 해야하는지, 그렇다면 몇ms 이내에 재 수신을 해야하는지 궁금합니다
감사합니다
dbgrid에 콤보박스를 올리려면..
if (gdFocused in state) then
begin
if DBGrid1.SelectedIndex = 3 then
begin
with DBComboBox1 do
begin
left := Rect.left + DBGrid1.left;
top := Rect.Top + DBGrid1.Top;
Width := Rect.Right - Rect.left;
visible := true;
end;
end;
end;
요렇게 하라고 해서 시킨대로 했더니..
해당 필드에 포커스가 가면 콤보박스가 보이기는 보이는데..
dbgrid가 밑으로 주르르.. 내려가서..
결국은 dbgrid와 콤보박스의 겹쳐지기가 않되더라구요.. 이궁..(갈켜줘도 못하는 지영이..)
그런데 더 화가 나는건..
옆에 펜티엄3 컴퓨터에 가서 똑같이 코딩을 해서 실행을 시켰더니 자..알 되는겁니다.. 설마.. 컴퓨터 차별하는건 아니지요??? ^^
원인이 뭘까요..