名前 題名 ▼ Syakeさん > 続きです > //=================EXE側 > var > Form1: TForm1; > implementation > function OpenFrm(var WinHad :THandle):Boolean; stdcall; external 'OpenFrmTest.dll'; > procedure SyncApp(appHnd :THandle); stdcall; external 'OpenFrmTest.dll'; > {$R *.dfm} > procedure TForm1.Button1Click(Sender: TObject); > begin > SyncApp(Application.Handle); > {DllFormが既にオープンされているか} > if IsWindow(TestfrmWinHnd) = False then //(二重起動防止) > begin > if OpenFrmExCCTPrt(TestfrmWinHnd) = False then > begin > //; > end; > end; > end; > > //=================DLLForm側 > //----------------------frmMain > var > frmMain: TfrmMain; > function OpenFrm(var WinHad :THandle):Boolean;stdcall; > procedure SyncApp(AppHnd :THandle); stdcall; > implementation > uses UfrmSub; > function OpenFrm(var WinHad :THandle):Boolean;stdcall; > begin > frmMain := TfrmMain.Create(Application); > frmSub := TfrmSub.Create(Application); > try > WinHad := frmMain.WindowHandle; > frmMain.Show ; > Result := True; > except > frmMain.Free; > frmSub.Free; > Result := False; > end; > end; > procedure SyncApp(AppHnd :THandle);stdcall; > begin > //Application.Handle := AppHnd;//今回は使わない > end; > procedure TfrmMain.FormClose(Sender: TObject; var Action: TCloseAction); > begin > frmSub.Free; > frmMain.Free; > end; > > //----------------------FrmSub > procedure TfrmSub.Button1Click(Sender: TObject); > begin > frmMain.Close;//DLLの読み込み違反 > end; > > 一体、どうすればUnit2から閉じれるのか(^_^;) > > GIF,JPEG,PNG画像ファイル及びLZH,ZIPファイルをアップロードできます.600 x 1200 ピクセルを超える画像は縮小表示されます(画像クリックで拡大表示). (上限122000(120k)バイト) 削除キー Link