名前 題名 ▼ Mr.XRAYさん > ▼ takaさん,どうもです. > > taka さんの > > procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean); > begin > CanClose := True; > if Assigned(AcroPDF1) then > try > FreeAndNil(AcroPDF1); > except > AcroPDF1 := nil; > end; > end; > > のコードがなかったら気が付かなかったでしょうね. > やはりプログラムというのはコードを書いて,それが実行されるわけですから, > 具体的なコードがあるというのは強力です. > コードがなければ抽象的な話になってしまいますから. > > > 修正コードみました。 > > Delphiのインポートツールのバグなんですね。 > > ある意味ではやむを得ないということもあるかも知れません. > 操作対象の COM オブジェクトはパーションによって機能が変わってきますから. > で,修正コードについて書いていませんでした.AcroPDFLib_TLB.pas にある > > TAcroPDF = class(TOleControl) > private > FIntf: IAcroAXDocShim; > function GetControlInterface: IAcroAXDocShim; > > の FIntf が TAcroPDF のコンテナの実体ですので,destructor を override > して以下のように強制的に nil にしました. > この nil も AcroPDF1 := nil; がヒントです (^^; > > destructor TAcroPDF.Destroy; > begin > FIntf := nil; > inherited; > end; GIF,JPEG,PNG画像ファイル及びLZH,ZIPファイルをアップロードできます.600 x 1200 ピクセルを超える画像は縮小表示されます(画像クリックで拡大表示). (上限122000(120k)バイト) 削除キー Link