|
목록에서 글자 제한 23이였음 ?>
질문게시판 - 반드시 검색을 하신 후 원하는 답변을 찾을 수 없을 때, 질문을 올려주세요. |
| Posted by 신용주 | 2009-02-05 08:55:29, Hit : 3445 | |
|
|
|
1. 단축키에 관한 질문을 하려고 합니다.
자판을눌렀을때,
(키코드 17은 Ctrl / 키코드 83은 S)
만일(_키=17)
{
만일(_키=83)
{
명령어 쭉~!
}
}
이렇게 하면 Ctrl + S 가 되는줄 알았는데. 안되네요. 이유가...?
(메뉴도 가능하지만, 때론 응용하여 다른 방식이 필요할때가 있어서.)
2. 상진님의 DLL 일체형에서,
DLL1을 이진으로 바꾸고,
DLL2를 이진으로 바꿔서,
두개를 하나로 이어붙이면,
두개의 DLL 이 하나로 합쳐지나요? (둘다 이용 가능?) |
|
|
박종훈 2009-02-05 PM 11:01:24 |
|
|
|
1번에 대한 답변입니다.
놀라운 일이겠지만, [자판을 눌렀을때]에서는 Ctrl, Alt, Shift 등등의 키값이 잡히지 않습니다. 즉, 자판을 눌렀을때에서
창0.제목 := 수를문(_키);
위와 같은 명령어를 넣어보시고 실험하시면 A자판의 경우 65, S의 경우 83 이라고 잘 나오지면 놀랍게도 Ctrl, Alt, Shift 등의 특수키의 경우에는 _키 값이 나오지 않는 다는 사실을 발견하게 될겁니다.
그러면 어떻게 해결하냐?
[자판을 누를때]와 [자판을 땔때]에 보시면 [_키] 외에도 특별한 변수가 있습니다. 바로 Ctrl, Alt, Shift의 진리변수가 있다는 사실인데요. 즉, Ctrl, Alt, Shift키를 활용하시겠다면 자판을 누를때 혹은 자판을 땔때를 이용하셔야 한다는 거죠.
신용주님께서 의도하신 것을 하시려면 [자판을 누를때]에다가 아래와 같이 해보세요.
만일(Ctrl 그리고 (_키 = 83)) {
명령어 쭉...
}
2번에 대한 답변입니다.
결론부터 말하자면 안됩니다.
지금 질물이 DLL1을 이진으로 바꾼 값과 DLL2를 이진으로 바꾼 값을 하나로 이어서 그것을 다시 DLL파일로 생성하신다는 건데 그러면 DLL1과 DLL2의 기능이 합쳐지느냐? 라는 건데요. 안됩니다.
실험은 안해봤지만;;; 안될겁니다-_-;
직접 해보지는 않은거라서 확신은 못하겠는데요^^;
DLL1의 함수 혹은 DLL2의 함수만 살아남던가 아니면, 아예 오류가 나던가 둘중 하나이지 DLL1의 기능과 DLL2의 기능이 합쳐지지는 않습니다.
왜냐하면 DLL에도 파일구조라는 것이 있습니다.(잘은 모르지만;;;)
무슨 헤더니, 뭐뭐 이런거 해서 복잡한 파일구조가 있습니다.
하나로 합치시는 것을 원하신다면 차라리 DLL하나를 따로 제작하셔서 DLL1의 기능과 DLL2의 기능을 모두 갖춘 새로운 DLL파일 하나를 제작하셔야 합니다.
이 질문에 대한 답변을 비유적으로 말하자면,
토끼의 종자와 강아지의 종자를 합하면 "토아지"-_-;;; 라는 동물이 생길수 없는 것과 마찬가지라고 생각하시면 됩니다';;;;
(비유가 맞는지는 모르겠지만;;;)
즉, 다른 예로 들자면 창조 프로그램중에서 지우개와 이지리네임의 소스코드를 이진으로 읽어서 합친다고 해서 "지네임" 이라는 새로운 프로그램이 만들어지기는 커녕, 오히려 창조에서 파일을 읽을때 오류가 날것입니다; 이렇게 이해를 해주세요^^;;
즉, 같은 종류의 DLL 파일이지만서도, DLL마다 파일 내부의 구조가 다릅니다. 아아, 구조는 같겠군요. 그런데 그 내용물이 각각 달라서 합친다고 하면 오히려 오류가 날거라고 생각합니다.
즉, 결론은 둘이 이진으로 읽어서 합친다고 해도 두 DLL파일의 기능이 하나로 합쳐지지 않는 다는 겁니다^^ (뭔 주저리 주저리 잡담을 많이해서 길어졌네요;;;) |
|
|
강현구 2009-02-06 AM 2:13:07 |
|
|
|
안됩니다.
DLL이 로드되고 언로드될 때 DLL 파일에 있는 DllMain 함수를 호출하는데.. 이름이 같은 함수가 2개가 된다면 안 되겠죠 |
|
|
지상현 2010-06-24 PM 8:32:20 |
|
|
|
1. 자판을 눌렀을때는 키를 누를 때마다 발생합니다.
따라서 Ctrl 눌렀을 때 발생하고, 그 다음 S 누르면 또 발생하겠죠.
사건 하나가 키 하나밖에 받지 못하므로 Ctrl+S 같이 동시에 누르는 것은 못 잡습니다.
종훈님 말씀하신대로 별도로 제공되는 인자를 쓰셔야 합니다.
2. 아닙니다. DLL 파일마다 따로 따로 만드셔서 따로 따로 뽑아내셔야 합니다.
DLL이 아니라 그림이라고 생각해보세요.
그냥 합쳐버린다고 그림 두 장이 한 장으로 자연스레 합쳐지지 않을 겁니다. |
|
|
지우개 Expert 3.0 제작자 : 천호성 님 [LINK] |
|
|
|
대박로또2005 제작자 : 최재일 님 [LINK] |
|
|
1 | 박종훈 님 | 15292 점 | |
2 | 지상현 님 | 8809 점 | |
3 | 손상진 님 | 7388 점 | |
4 | 권선중 님 | 6060 점 | |
5 | 이진백 님 | 5174 점 | |
|
|
|
가입일 | 닉네임 |
05/31 | 김동률 |
03/31 | 홍형기 |
09/01 | o00pp99oo |
12/27 | 이재민 |
11/20 | 이희철 |
|
|
|
|
. |
. |
. |
|