자유롭게 질의 및 응답을 할 수 있는 게시판입니다. 개발자 여러분의 답변이 큰 도움이 됩니다. 
  • 제품설치/등록 오류 문의: 설치/등록 Q&A 이용 (제품 구매 고객 한정)

본 게시판 사용시 당부 사항
* 이 게시판은 자유롭게 질문을 올리고 자발적으로 답변을 공유하는 게시판입니다.
* 어느 누구도 답변을 달아야만 하는 책임은 없습니다.
* 따라서 질문을 올리실 때에는 최대한 자세하고 정중하게 질문을 올려 주세요.
* 최대한 질문을 자세히 올려야 답변도 자세히 올라 옵니다.
* 본 질문에 답변을 주시는 여러 개발자님들께 미리 감사드립니다.
-----------------------------------------------------------------------------------------------

안녕하세요.

예전에 waterandfood@nate.com 아이디로 Delphi XE 5를 구매하였습니다.

현재 델파이7(window xp) 작업한 파일들(dll 포함)을 델파이xe5(window7 64bit)로 복사해와서 마이그레이션 중에 있습니다.

결론부터 말씀드리자면 LoadLibrary 함수가 실행이 되지 않는거 같습니다.

델마당이나 구글링을 해봐도 제가 원하는 LoadLibrary에 대한 답은 찾지를 못했습니다.

프로그램 실행순서는 로그인화면에서 로그인후 메인화면이 열립니다.

그전에 알림화면이 있는지 체크하여 알림화면이 있으면 알림화면을 열고 그렇지 않으면 메인화면이 열립니다.

현재는 알림화면이 열려야 하는데 열리지 않습니다. 그리고 메인화면이 보입니다.

메인화면서도 메뉴들을 클릭하면 클릭한 메뉴화면이 열리지 않습니다.(알림화면이 열리지 않듯이)

아래는 LoadLibrary관련 RunDll소스입니다.

 

unit RunDll;
interface
uses
  Windows, SysUtils, Classes, Controls, Forms;
type
  TRunDll = class(TObject)
  private
    { Private declarations }
    FList : TStringList;
    Function LoadDll(DllName:String):Integer;
  public
    { Public declarations }
    Constructor Create;
    Destructor Destroy; override;
    class Procedure Run(ModuleID,DllName:String; Parent:TWinControl; Visible:Boolean);
  End;
implementation
uses
  uSubForm;
var
  FRunDLL : TRunDLL = Nil;
Constructor TRunDll.Create;
Begin
  Inherited Create;
  FList:= TStringList.Create;
End;
Destructor TRunDll.Destroy;
Begin
  FList.Free;
  Inherited Destroy;
End;
Function TRunDll.LoadDll(DllName:String):Integer;
Begin
  showmessage('DllName1 :' + DllName);
  //'DllName1 => C:\Users\Public\Documents\RAD Studio\projects\son_project\son_atp\ALIM_JDJ.DLL'  DllName1값을 잘 나타냅니다.
  

  FList.Clear;
  FList.Add(DllName);
  FList.Values[DllName] := DllName;  
  
  showmessage('DllName2 =>' + FList.Values[DllName]);
  //'DllName2 => C:\Users\Public\Documents\RAD Studio\projects\son_project\son_atp\ALIM_JDJ.DLL'  DllName2값을 잘 나타냅니다.

 

  Result:= StrToIntdef(FList.Values[DllName], -1);


  If Result = -1 then Begin

 

  //xp에서 적용된 소스
  //Result:= LoadLibrary(PChar(DllName));

 

  // windows 7에서 적용된 소스
    Result:= LoadLibrary(PWideChar(WideString(DllName)));

 

    FList.Values[DllName]:= IntToStr(Result);

  End;
End;
class Procedure TRunDll.Run(ModuleID,DllName:String; Parent:TWinControl; Visible:Boolean);
Var
  iHandle : Integer;
  DllFunc : Procedure (ModuleID:String; App:TApplication; Parent:TWinControl; Visible:Boolean); far;
Begin
  If FRunDLL = Nil then FRunDLL:= TRunDLL.Create;
  Try
    iHandle:= FRunDLL.LoadDll(DllName);
    If iHandle > 32 then Begin


      //xp에서 적용된 소스
      //@DllFunc:= GetProcAddress(iHandle, PChar('OpenSubModule'));

 

      // windows 7에서 적용된 소스
      @DllFunc:= GetProcAddress(iHandle, PAnsiChar('OpenSubModule'));


      If @DllFunc <> Nil then
        DllFunc(ModuleID, Application, Parent, Visible);
    End;
  Except
  End;
End;
end.

 

나머지 소스들은 델파이7에서 사용하던 그대로 델파이xe5에 적용중입니다.

 

답변을 부탁드립니다.

번호 제목 글쓴이 날짜 조회 수
공지 [프로그래밍 강의] 2021.6~2021.12 관리자 2015.01.22 17190
공지 유용한 관련 사이트 관리자2 2014.03.20 56067
공지 본 게시판은 개발자 여러분들의 질문과 답변을 공유하는 공간입니다. 관리자 2012.01.10 99505
1333 win32 에서는 FMX의 TSelection 같은 컴포넌트가 없을까요? [2] 아크나톤 2019.04.11 259
1332 안드로이드에서 블루투스 4.0 ble 송신 관련 문의 드립니다. [1] file 제로윈코딩 2018.11.08 259
1331 delphi 2007 사용자입니다. tms webgmaps 컴포넌트 설치 문의 0슝아빠0 2019.05.27 259
1330 DB그리드 문제 [1] file 똘귀아빠 2020.02.10 259
1329 FastReport에서 코드작성은 어떻게 해야되나요? 코드탭이 아예 선택이 안되네요.. [2] file 왕초보 2020.10.13 259
1328 사용자 컴포넌트 추가를 해도 tool Palette에 보이지 않음 [1] file 추도사 2021.04.14 259
1327 [Push 세미나] 바코드, RFID 등 블루투스 장비와 파이어몽키 간 인터페이스 모듈 개발을 하고 싶습니다. 관리자 2020.05.04 260
1326 게시글 수정 부탁드립니다. [1] vane 2019.11.19 260
1325 linux 용 delphi UI 를 만들고 싶어요 [1] 브래이브 2016.07.22 260
1324 안드로이드 Bluetooth file 세진 2016.05.13 261
1323 ip4 주소형식을 ipv6 형식으로 변환하는 합수 없나요? kerry 2016.08.30 261
1322 IOS 앱실행관련 문의사항입니다. ( 시뮬레이터 관련 ) [2] 궁금한사람 2019.09.02 261
1321 [IoT 세미나] 병원에서의 IoT 활용 예제를 알고싶어요. Humphery 2015.09.04 262
1320 Delphi TWebBrowser 에서 360 파노라마 VR 속도가 늦어요. [3] file midas 2018.11.19 262
1319 addindex 에서 key viloation 에러 [2] 가나다 2019.04.02 262
1318 10.2.1 Tokyo - Linux Platform 개발환경 구축관련 문의 거북선생 2019.08.08 262
1317 Rest Server 를 이용해서 API 개발 하려고 합니다. [1] 제트콜 2016.08.23 263
1316 델파이로 개발된 GUI프로그램 관련 질문이 있습니다.. [1] 재춘이 2020.04.23 263
1315 OCX 설치가 이상하게 안되요~ 카이로스 2016.01.27 264
1314 ios기기 연결 실행시 에러 - 살펴봐주세요.. 감사 [1] datare 2015.07.11 264