Q&A

  • VB6.0으로 만든 DLL을 델파이6.0에서 사용할시 문제
VB에서 작성한 DLL입니다. 우선 간단하게 테스트 하기 위해

간단한 Sum 이라는 함수를 만들어 두개의 더블형을 매개변수로 하여

합산한 값이 리턴되는 함수를 만들어 보았습니다.

하지만 델파이쪽 진행하시는 업체분이 함수가 보이지 않으며

클래스 캑체 자체가 붙질 않는다고 하네요

다음과 같은 내용으로 첨부된 파일로 테스트를 부탁드려 봅니다. ㅜ.ㅜ

빠른 시간안에 해결해야 될 문제라서요

VB DLL 작성시 문제가 있는건가요? VB에서 DLL을 로드해서는

아무런 문제가 없습니다. ㅜ.ㅜ

그럼 부탁드립니다.

=================================================
클래스 명 : SumDll

함수 명 :

Sum(a , b)

매개변수 a : double
매개변수 b : double
반환형 : double

호출방법
VB 에서는 우선 SumDll 형 객체를 생성한후 객체에서 연결합니다.

선언부에
public Test_Dll as SumDll
초기화시에 객체생성은 다음과 같이 합니다.
set Test_Dll = new SumDll

실행시에

C = Test_Dll.Sum(1.2342332 , 0.233848477)

========================================



2  COMMENTS
  • Profile
    홍성락 2008.10.22 08:01
    이건 보통dll이 아니네요, Register에 등록 부터하여야 합니다. 델파이에서 'import Type Library'로 dll을 등록해 유닛생성하고 인스톨하면 델파이 컴포넌트파렛트에만 등록 되는거구요, 그전 그후라도 윈도우 RegisterServer에 등록해야합니다. 즉 regsvr32.exe로 등록해야합니다. bat를 만들거나 regsvr32 폴더명\SH_TEST.dll해보세요.
    그리고 Sum함수를 보니 상수가 아니라 변수를 넣어야 될거 같습니다.
  • Profile
    문형국 2008.10.30 10:58
    답변 감사드립니다.
    시도해 보겠습니다. 꾸벅~
    • TOMATO
    • 2008.10.24 19:26
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 석주현
      2008.10.24 19:34
      Test.exe 핸들을 가지고 메시지를 보내면 되지 않을까요.
    • 정경철
    • 2008.10.24 05:13
    • 4 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      2008.10.24 16:49
      pChar 말고 로컬 변수로 Array of Char[크기] 로 선언 후 사용해 보세요. 알아서 관리 됩니다. ^^
    • 이정욱
      2008.10.24 16:50
      사실 위의 에러에 관련된 부분은 윗 부분의 소스만을 가지고는 판단하기 어려울 것 같습니다.
    • 정경철
      2008.10.24 19:00
      DLL 함수 원형에 파라미터값이 char *out_print_flag 이처럼 되어 있어서 델파이에서 PChar 로 받...
    • 이정욱
      2008.10.24 19:55
      제 뜻이..그거였습니다. ^^ Array[크기] of Char...
    • 이정욱
      2008.10.24 16:54
      보통 Timeout 속성을 설정하고 사용하게 되죠.. 혹시 .socket.close 는 사용해 보셨나요?
    • 이승현
      2008.10.28 21:47
      넵 다 안됩니다. ㅜ.ㅜ
    • 아르스
    • 2008.10.24 03:06
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 아르스
      2008.10.24 03:20
      ExtractICon(HInstance, 'C:\icon.dll', 0); 이런식으로 뽑아서 쓰면 되네요 ^^
    • 아르스
      2008.10.28 18:48
      음... 뭐가 문제인지 몰라도 아이콘이 추출되었다 안되었다 하는거 같네요..
    • TOMATO
    • 2008.10.24 00:00
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 최용일
      2008.10.24 00:28
      예외처리라고 쓰인 부분에서 하시는것이 아니라 TSaveDialog.Execute에서 하시는것이 맞습니다. if Save...
    • 장진환
      2008.10.24 01:10
      if SaveDialog1.Execute = mrOK then // OK 버튼을 눌렀을 때... if SaveDialog1.Execute = true the...
    • 최용일
      2008.10.24 02:19
      이런... 실수했군요... ^^
    • 황성일
    • 2008.10.23 02:59
    • 0 COMMENTS
    • /
    • 0 LIKES
    • phono
      2008.10.23 21:56
      기본 데이터 컨트롤에 있는 그리드로는 안되구요.. 그래서 그리드보다는 db 컨트롤 그리드가 마련되...
    • 소울해커
      2008.10.24 02:06
      DBGrid 안에 라디오버튼을 넣으실려면 상당히 복잡합니다. 대충 그려보면 private rdFirst,...
    • 장성호
      2008.10.23 00:38
      뭐 대부분 다음과 같이 하면 됩니다. WebBroswer1.OleObject.Document.ParentWindow.ScrollTo( Y ...
    • 이강석
      2008.10.23 00:46
      음....근데 Y, X의 좌표는 어디서 나오는건지 제가 무식해서~~ㅠㅠ
    • 장성호
      2008.10.23 01:07
      기냥 맨 마지막으로 보내려면 WebBrower1.OleObject.Document.DocumentElement.scrollTop :=20000000...
    • 이강석
      2008.10.23 01:56
      음..위에처럼 엄청 큰숫자를 줬어도..... 스크롤을 중간에다가 놓고... 저 조건을 타면 중간정도로...
    • 장성호
      2008.10.23 02:52
      테스트 해보니 Naver.com , daum.net ,paran.com 은 되구.. empas.com 은 안되구 http://ww...
    • 이강석
      2008.10.23 03:01
      아...^^ 넵 감사합니다...찾아볼꼐요...^^
    • 이강석
      2008.10.24 02:08
      OleDocument.body.scrollTop := OleDocument.body.scrollHeight; 이렇게 하니깐 되긴 되는데...제대...
    • 이정욱
      2008.10.25 09:06
      Fields Edit에서 아예 설정 하지 않으면 저절로 모든 필드가 세팅됩니다. 그렇게 사용하시면 될거 같은데...
    • 정경철
      2008.11.13 06:32
      Fields Edit에서 표시 형식이나... Excel 로 변환 할때 Field 순서등을 지정 하기 위에서 설정을 하였습...
    • 소울해커
      2008.10.24 01:41
      그리드에 piter 여부 사과 감 귤 001 Y ㅁ <-체크 ㅁ ...
    • 꼬꼬마
      2008.10.24 20:38
      감사합니다~~ 한가지 질문이 있는데요~~ grid.SetCheckBoxState(3, i, (grid.Cells[0, i] = '001')...
    • 소울해커
      2008.10.24 21:38
      grid.SetCheckBoxState(3, i, (grid.Cells[0, i] = '001') and (grid.Cells[1, i] = 'Y') ); grid.Se...
    • 꼬꼬마
      2008.10.25 00:00
      점심 식사는 하셨나요^^ 좋은 정보 많이 주시는데... 갑자하 하다가 궁금증이 생겨서요... 날...
    • 소울해커
      2008.10.25 00:47
      쿼리에서 날짜와 지역으로 DISTINCT 해서 불러오거나 GROUP BY로 불러오거나 ROWNUM 으로 중복값을...
    • 꼬꼬마
      2008.10.25 01:13
      근데요... 중복값을 제가한다는게... 어떻게 보면 중복값이 아니지 않나여? 날짜 ...
    • 소울해커
      2008.10.25 01:59
      셀병합을 말씀하시는 것 같은데... 그거라면 위에 쓴건 필요없구요. 일단 쿼리에서 정렬순서를 날짜...
    • • • •
    • 정경철
      2008.10.22 20:07
      이 메시지만 보면.. SQL 문장이 잘못 된것 같은데 SQL 조건절이나 ODBC를 다시 한번 확인 해 보십시오.
    • 가르쳐주삼
      2008.10.22 23:29
      ODBC 문제였네요~^^ 감사합니다.
    • 홍성락
      2008.10.23 04:42
      아마! 인덱스가 넘는다는 건데요. 소스상에서 ...Bitmap.Scanline[인덱스]의 소스를 디버깅 해보세요. ...
    • 정경철
      2008.10.22 20:05
      혹시..전송속도가 많지 않을 싶은데 전송속도를 한번 맞춰 보십시오. 보통 9600bps 로 되어 있는데 48...
    • 황성일
      2008.10.22 20:13
      9600bps로 해야지만 저렇게 숫자가 제대로 나오고요 나머지는 다 이상한 외계어 문자들이 찍히내요
    • 이정욱
      2008.10.22 20:55
      저것은 외계어가 아닌 프로토콜 상의 시작과 끝을 알려주는 문자 같습니다. 숫자가 제데로 들어오니까요....
    • 석주현
      2008.10.22 21:30
      개발사에 프로토콜을 의뢰 하시는게 맞을 겁니다. 달랑 저거 하나만 쓰는 경우라면 모르지만 보통 다...
    • 황성일
      2008.10.22 21:48
      아 답변들 감사합니다. 머라고 말하긴 점 그렇지만-.- 당황스럽게도 이 리더기 개발사 망했더군요;; ...
    • 장성호
      2008.10.22 05:18
      가능합니다. var fZoom: Double; // 축소하기 (Zoom-Out) procedure TForm1.Button2Click...
    • 이강석
      2008.10.22 18:48
      감사합니다...^^
    • 문형국
    • 2008.10.21 23:33
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 홍성락
      2008.10.22 08:01
      이건 보통dll이 아니네요, Register에 등록 부터하여야 합니다. 델파이에서 'import Type Library'로 dll...
    • 문형국
      2008.10.30 10:58
      답변 감사드립니다. 시도해 보겠습니다. 꾸벅~
    • 이정욱
      2008.10.25 09:08
      TBX툴바에 대해 조금 더 자세한 정보를....
    • 아르스
      2008.10.27 20:38
      아... TBX가 Toolbar2000이(tb2k)이랑 서로 호환되지 않으면(패치를 했다손 치더라도) 이런 문제가 발...
    • 델파인
    • 2008.10.21 20:03
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 최용일
      2008.10.21 19:31
      간단하게 실행파일명 뒤에 파라매터를 추가하세요 Winexec('xxx.exe parameter1 parameter2', SW_SHOW...
    • 장성호
      2008.10.21 20:52
      WinExec보다는 ShellExecute 나 CreateProcess 를 이용하는것이 좋습니다. 참조 http://blog.naver...