rs-232 통신 프로그램을 작성하여 win98/me에서는 잘 쓰고 있는데
xp/2000 에서는 동작이 안됩니다.
통신포트 open시 win api CreateFile()을 사용하여 얻은 handle에
read/write 하는 방법을 사용하였는데 assembly 수준에서 디버깅해 보면
i/o 포트 조작 명령(in/out) 에서 특권명령이라는 메세지가 뜨고 실행불가
상태가 됩니다.
win xp/2000 에서 in/out 명령을 막아 놓은 것 같은데
xp/2000 에서
- port i/o는 영영 불가능한지 ?
- 아니면 port i/o를 안건드리고 rs232 프로그램이 가능한지 ?
전문가의 답변을 기다립니다.
참고로 자료실에서 TComPort를 받아 설치하여 사용해봤습니다만
마찬가지 결과였습니다.(source도 포함되어 있는데 com포트open,
rs232 read/write 모두 제가 사용한 함수를 사용했더군요.
같은결과나오는게 당연....^^)
아무쪼록 귀한 조언을 가다립니다.
Win2000 Pro ComPort2.64 버전으로 잘 사용하고 있습니다.
다만, 컴포넌트에서 제공되는 이벤트, 프로퍼티, 메소드만 사용했을 경우
입니다.
직접 I/O를 제어하는 방식으로 프로그래밍 하셨다면
PortXFast라는 컴포넌트를 사용해 보심이...
2000등에서 I/O직접 제어 가능하도록 해줍니다.