창조유저그룹-커즈닷컴
Window close
ID :     PASS :   
   
  처음으로
  창조
  창조 소개
창조 다운로드
CUGz.com 소개
온라인 도움말
  커뮤니티
  가입인사
자유게시판
Q/A게시판
TIP/TECH
열린강좌
자주하는질문
아이디어게시판
  자료실
  소스자료실
프로그램자료실
기타자료실
명예의 전당
이미지 자료실
  지원/기타
  표준용어재정
구글 웹서치  
관리자 전용


LIST ALL
Posted by 이진백2005-07-22 14:11:36, Hit : 5968
[ps.구루 강좌#13] 창조에서는 델파이에서 만든 DLL만 가능합니까?
Homepage : http://psoft.ev7.net/
Post URL : http://cugz.sjworks.net/bbs/zboard.php?id=open_lec&no=78
...라는 질문을 올리시길래 간단히 창조에서 안 되는 DLL의 유형을 골라 보았습니다.


(서론)
기본적으로 DLL은 언어적 한계를 초월합니다. (언어에 얽매이지 않음)
집에 델파이 안 깔렸다고 델파이로 만들어진 exe가 안 켜지는 아니듯이...


dll도 마찬가지입니다.
dll은 exe와 같은 형태입니다. 다른 게 있다면 무엇이 다를까요?

DLL은 혼자서 실행될 수 없습니다.
반드시 다른 exe 등이 dll을 부속으로 로드해서 함수를 실행해야 하죠.

또 하나는, dll은 그 특징대로 함수를 밖으로 끄집이 내놓을 수 있습니다.
이것이 약간의 필연적인 언어의 장벽을 어쩔 수 없이 생기게 합니다.




(본론)
생각을 조금만 해보십시오.


1. 언어 의존적 변수의 사용

function YouCantCallMeExceptDelphi( App: TApplication ); stdcall;

위는 예제로 DLL 내부 선언을 써보았습니다.

DLL에 델파이 고유의 객체인 TApplication을 선언하였군요,
다른 프로그램에서도 이 TApplication 대로 넣어야 합니다.

그렇게 가능한건 오로지 델파이로 만든 프로그램 뿐이지요.

그러므로;; 델파이로 만들지 않은 건 그게 가능합니까?
아니잖습니까.




2. 포인터의 한계
* Pointer 등의 형 (PChar => 창조에서 "문자"형으로 지원)
* 프로그램 내부 함수를 인자로 넣어야 할 때 (Enum~~~ API가 대부분 그렇습니다)
* 구조체의 사용

포인터 또한 일부 가로막기도 합니다. 어째서인지는 지상현님께서 많이 설명하셨을겁니다.



3. 특수한 DLL

ActiveX 형태의 DLL 역시 창조에서 사용할 수 없습니다.
ocx 또한 DLL과 비슷하지만, ActiveX 적이면 곤란합니다.

델파이에서는 이런 ActiveX DLL을 적극적으로 지원하여 객체로 포장해주죠.
그런 식으로 활용하여 델파이로 만든 프로그램 안에 얼마든지 WindowsMediaPlayer 같은게 들어갈 수 있죠.

VB도 이 점은 마찬가지일 겁니다.

못 믿겠으면, wmp.dll (Windows Media Player ActiveX) 을 한번 창조에서 써보시지요.




(나머지 더 있을지도 모르나, 여기서는 다루지 않겠습니다.)


(결론)
DLL은 무엇으로 짰느냐는 중요하지 않다.
그저, 어떤 형태로 입출력을 하느냐의 문제이다.

경우에 따라 델파이로 만든것 역시 창조에서 못 쓰게 될 수도 있다.
위의 대표적 조건을 충족한다면...

지상현   2005-07-22 PM 2:55:52  
당연하지만, 16비트 DLL 안되더라구요... 아 그리고 함수 이름을 안쓰고 오디널로 익스포트 한 것도 안되는 것 같습니다.

그리고 중요한 것....
stdcall 만 제대로 되는 듯 -_-;
LIST ALL               GO TO THE TOP


N
   Subject
Posted by
Date
H
69
   [ps.구루 강좌#11] 서비스팩2에서 프로그램 추가/제거 설정
ps.이진백 2004/10/26  5473
68
   창조의 한계를 뛰어 넘어서 #1: '문자' 포인터 써먹기 [4]
지상현 2004/11/23  6942
67
   [ps.구루 강좌 #12♭]포인터를 왜 씁니까? [2]
ps.이진백 2004/12/31  6315
66
     [re] [ps.구루 강좌 #12♭]포인터를 왜 씁니까? [1]
지상현 2005/01/01  5636
65
   영문 윈도우에서의 창조로 만든 프로그램.. [16]
손상진 2005/01/02  5950
64
   [쉬운강좌1]환경파일 다루기 [3]
정성우 2005/01/11  5468
63
   마우스 오른쪽 눌렀을때의 메뉴 뜨게하기(초보용)
이시영 2005/02/02  5147
62
   [끼적강좌 5] 로그인 구현강좌 [1강][초급] [6]
권선중 2005/06/24  5454
61
     [끼적강좌 5] 로그인 구현강좌 [2강][중급] [2]
권선중 2005/06/25  5581
60
       [끼적강좌 5] 로그인 구현강좌 [3강][고급] [3]
권선중 2005/06/26  5362
59
         [re] [끼적강좌 5] 로그인 구현강좌 [4강][다계정 구현] [5]
권선중 2005/06/27  5010
58
   [끼적 강좌] 기본문법을 알아야 한다...! [10]
권선중 2005/06/27  4925
57
   [끼적강좌 6] 선중이 계발한 암호화구현 [7]
권선중 2005/06/29  4876
56
   [끼적강좌7] 달력 구현강좌 [1강][초급]
권선중 2005/07/11  5152
55
     [끼적강좌7] 달력 구현강좌 [2강][고급]
권선중 2005/07/15  4859
54
       [끼적강좌7] 달력 구현강좌 [3강][응용]
권선중 2005/07/16  4638
53
   [끼적강좌 8]RPG게임을 만들어보자 [1강] [3]
권선중 2005/07/16  6077
52
     [re] [끼적강좌 8]RPG게임을 만들어보자 [2강] [1]
권선중 2005/07/17  5706
51
   리소스 해커를 이용하여 DLL 파일안의 HTML 문서 넣기! [4]
qkrwhdgns 2005/07/20  5670

   [ps.구루 강좌#13] 창조에서는 델파이에서 만든 DLL만 가능합니까? [1]
이진백 2005/07/22  5968
49
   [폴더선택창보여]명령어의 언어 한글로 [8]
qkrwhdgns 2005/08/27  5456
48
   창조로 빠져보는 API #1 [2]
지상현 2005/09/04  7053
47
   창조로 빠져보는 API #2 [3]
지상현 2005/09/04  6337
46
   창조로 빠져보는 API #3 [13]
지상현 2005/09/04  7270
45
   [요청강좌#14] DLL제작 강의 (미완성) [4]
이진백 2005/10/09  5612
LIST ALL   Prev [1][2] 3 [4][5] Next
Copyright 1999-2024 Zeroboard / skin by reedyfox in miniwini style
로그인
지우개 Expert 3.0
제작자 : 천호성 님 [LINK]
로그인
대박로또2005
제작자 : 최재일 님 [LINK]
로그인
1박종훈15292 점
2지상현8809 점
3손상진7388 점
4권선중6060 점
5이진백5174 점
로그인
가입일닉네임
05/31김동률
03/31홍형기
09/01o00pp99oo
12/27이재민
11/20이희철
로그인