C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[41540] Re:Re:Re:Re:inportb 함수 사용하기
나그네 [lee180] 1106 읽음    2005-08-19 12:06
먼저 감사하고요
이렇게 해서 코딩을 했는데...
신택스,언 디파인에러가 나오네요
그리고 "INPOUT32.DLL"가 없어서요..
고맙습니다.

유영인  Cuperido 님이 쓰신 글 :
: 저기, 죄송한 말씀이지만,
: 제가 테스트 예제를 작성하던 도중...
: 올려드린 Inpout32.dll 에 문제가 있는걸 발견했습니다. --;
:
: 어이없는 답변이지만 제가 보내드린거 사용하지 마시고요,
: 포트 I/O 관련 컴포넌트 (저도 찾아보겠습니다. dlportio 등이 있는걸로 알고 있습니다)
: 를 아래와 같은 방법으로 dll 로 읽어서 사용하실 수 있습니다.
:
:
: cuperido
:
: //---------------------------------------------------------------------------
:
: #include <vcl.h>
: #pragma hdrstop
:
: #include "Unit1.h"
:
: //---------------------------------------------------------------------------
:
: #pragma package(smart_init)
: #pragma resource "*.dfm"
:
: TForm1 *Form1;
: HINSTANCE hiInstance;
: HOOKPROC hpInput, hpOutput;
:
: typedef short __stdcall __declspec(dllimport)Func_Inp32(short PortAddress);
: typedef void __stdcall __declspec(dllimport)Func_Out32(short PortAddress, short Value);
:
: Func_Inp32 *Inp32;
: Func_Out32 *Out32;
:
: //---------------------------------------------------------------------------
:
: __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner)
: {
:
:  hiInstance = LoadLibrary("INPOUT32.DLL");
:
:  Inp32 = (Func_Inp32 *)GetProcAddress(hiInstance, "Inp32");
:  Out32 = (Func_Out32 *)GetProcAddress(hiInstance, "Out32");
:
:
: }
:
: //---------------------------------------------------------------------------
:
: void __fastcall TForm1::FormDestroy(TObject *Sender)
: {
:
:  FreeLibrary(hiInstance);
:
: }
:
: //---------------------------------------------------------------------------
:
: void __fastcall TForm1::Button1Click(TObject *Sender)
: {
:
:  short             itValue;
:
:
:  itValue = Inp32(0x378);
:
:  ShowMessage(itValue);
:
: }
: //---------------------------------------------------------------------------
:
:
:
: 나그네 님이 쓰신 글 :
: : 제가 초보라서 이해가 잘 안되네요
: : 어떻게 쓰는지 간단한 예제가 있으면 부탁합니다.
: : 감사합니다.
: :
: :
: :
: : 유영인  Cuperido 님이 쓰신 글 :
: : : Procedure Out32(PortAddress: Smallint; Value: Smallint); Stdcall; External 'InpOut32.DLL';
: : : Function  Inp32(PortAddress: Smallint) : Smallint; Stdcall; External 'InpOut32.DLL';
: : :
: : : 이 형태로 정의되어 있으니 DLL에서 불러서 사용하시면 될 것 같습니다.
: : :
: : : 0x300을 읽을 수 있을지는 모르겠습니다. 실질적으로 Windows NT 버젼 (2000, XP 포함)
: : : 에서는 포트를 95/98 버젼과 다르게 직접 억세스 할 수 없으며, 또한 억세스를 권한을
: : : 받아서 하더라도 가벼운 포트가 아니면 (시리얼, 패러럴 등) 직접적으로 억세스가
: : : 불가능합니다.
: : :
: : : 이러한 경우 DDK를 받으셔서 VxD 파일을 만드시든지 해서, 장치에 대한 드라이버를
: : : 따로 만들어 주셔야 합니다.
: : :
: : :
: : : cuperido
: : :
: : : 나그네 님이 쓰신 글 :
: : : : 저는 포트(0x300)을 읽을려고합니다.
: : : : 근디 잘 안되어서요
: : : : 빌더 5용이 있음
: : : : 공개좀 부탁합니다.

+ -

관련 글 리스트
41509 inportb 함수 사용하기 나그네 789 2005/08/18
41511     Re:inportb 함수 사용하기 유영인 Cuperido 1055 2005/08/18
41535         Re:Re:inportb 함수 사용하기 나그네 927 2005/08/19
41539             Re:Re:Re:inportb 함수 사용하기 유영인 Cuperido 1054 2005/08/19
41540                 Re:Re:Re:Re:inportb 함수 사용하기 나그네 1106 2005/08/19
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.