C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
분야별 포럼
C++빌더
델파이
파이어몽키
C/C++
프리파스칼
파이어버드
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

자유게시판
세상 살아가는 이야기들을 나누는 사랑방입니다.
[13189] 빌더에서 API 따라하기
문제진 [munjejin] 2623 읽음    2007-07-19 03:44
c++ builder의 질문게시판의 49477에 질문한적이 있습니다.
API의 예제를 따라 하려면 빌더에서 어떻게 해야 하는지를요
근데 아무도 답변이 없어서 혼자 삽질해서 알았네요.

워낙 고수들만 계셔서 그런지, API는 다 통달한건지 아님 별 의미가 없어서 그런지
암튼 c++ builder6에서 API를 따라하려면 다음과 같은 순서로 하면 되겠습니다.
테스트한 빌더는 6.0 기준입니다.

1. 파일메뉴에서 New => Other => C File를 선택(api는 c언어로 짜여있기 땜시)한다.
2. 그러면 디펄트로 File1.c로 파일명이 나타난다.
3. API 소스코드를 작성한다.
4. 파일 이름을 다른이름으로 저장한다.(File => Save As...)
5. 3번과 4번을 바꿔서 작업해도 상관 없음
6. 소스코드가 완료되면 저장하고 파일을 닫는다.(File => Close All)
7. 소스 파일을 불러온다. ( File => Open)
8. 이 파일에 대해 프로젝트(Project)를 형성하고 컴파일과 실행을 할것이냐? 를 물어온다.
   그러면 Yes를 선택한다.
9. RUN메뉴의 run(F9)를 선택하면 저장할 프로젝트의 파일명을 물어온다.
   - 알아서 프로젝트의 파일명을 저장한다. 단, 여기서 소스파일명과 같은 이름으로 프로젝트명을 저장하면 안되므로
     소스파일과 다른 이름의 프로젝트명으로 선택한다.
10. 소스코드가 별 이상이 없으면 정상적으로 실행된다.
이현진 [cyberpd]   2007-07-19 07:28 X
참고로 .cpp 파일로 해도 상관없습니다. Windows API가 C로 구현되어 있지만, C++ 프로그램에서 호출하여 이용하는것이 가능하기 때문입니다.
김상구.패패루 [peperu]   2007-07-19 09:26 X
메시지 루프를 직접 만들어서 돌리는 것을 얘기하시는 것 같군요. 정답은 별 의미가 없기 때문입니다. 한 번 정도는 해 보시면서 메시지에 대한 체계를 익히시는 것도 나쁘지 않습니다. 직접 메시지 루프를 구현해야 하는 경우는 쓰레드에서 생성한 윈도우의 메시지 루프를 메인 프로세스에서 처리 하지 않고 개별 쓰레드에서 처리하도록 만들고 싶은 경우 정도입니다만... 이것 역시도 구현해야 하는 상황을 만나기가 쉽지 않죠.
참고로 위에서 하신 내용은 콘솔 어플리케이션 위저드로 하시면 됩니다.
김태선 [cppbuilder]   2007-07-19 09:35 X
모두 고수라서가 아니라, 다들 바빠서 일 것입니다.
그런 질문이 있는지조차도 모른 사람이 많았을 거예요.

win API는 잘 알면 알 수록 좋습니다.
빌더하려면 win API의 원리를 익히는 것은 필수입니다.
빌더는 win API를 몰라도 프로그래밍 할수 있지만
모르면 제대로된 고급 프로그램은 못 만듭니다.

TohnoLyn [tohnokanna]   2007-07-19 10:04 X
API는 C가 아니라 윈도우상에 존재하는 모든 언어에서 다 호출가능합니다 ㅡ.ㅡ
문제진 [munjejin]   2007-07-19 12:03 X
그렇죠 api는 윈도에 기본이니께
꼭 똑같은 함수나 구조체가 아니더라도 비슷하게 각언어에 사용될수 있도록
다듬어 지겠죠.

TohnoLyn님의 글을 보니 비베의 유명한 사이트인 하우투....의 쥔장의 말이
생각나는군요.

"모든 프로그램은 하나로 통한다." 전 비록 비베를 많이 사용하지 않지만
그분의 이말 한마디는 감히 그분의 실력을 짐작케 하더군요.
  
TohnoLyn [tohnokanna]   2007-07-19 12:17 X
문제진 // 아뇨 다 똑같은 함수와 구조체입니다 `-`

실제로 Win32 API는 GDI32.dll Kernal32.dll User32.dll 이 3개의 DLL 파일 안에 있는걸 쓰는 것이거든요(XP부터는 GDIPlus.dll 포함)

어떤 언어든지 DLL은 지원하니까 가능한거죠. 일반적으로 DLL을 여러 언어에서 돌려쓰는것과 마찬가집니다...
문제진 [munjejin]   2007-07-19 12:25 X
그렇죠! 그렇죠!
왜 난 dll파일이 안 떠올랐서 다듬어진다고 표현했을까?
아~ 쪽팔려 죽갔네

역시 TohnoLyn님은 대단해
아제나 [azena]   2007-07-20 10:21 X
콘솔 위져드로 하시면 되는데 어렵게 하시는군요;;;
빌더 쓰면서 메시지 루프를 만드는 것은 그다지 좋아 보이지 않습니다.
WndProc 오버라이딩해서 쓰세요;;;
메시지맵을 써도 되는데, 저는 왠지 메시지맵 문법이 마음에 안들더군요 :D

+ -

관련 글 리스트
13189 빌더에서 API 따라하기 문제진 2623 2007/07/19
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.