<div dir="ltr">I can't get PrinterSetupDialog1.Execute to work on Lazarus 1.4.2, FPC 2.6.4, on Windows 7. <div><br></div><div>I couldn't get it to work in a program that I have used for a long time, so I built a simple test program, and get the same error code. </div><div><br></div><div>Here is the complete program:</div><div><br></div><div><div>unit printertestunit;</div><div><br></div><div>{$mode objfpc}{$H+}</div><div><br></div><div>interface</div><div><br></div><div>uses</div><div>  Classes, SysUtils, FileUtil, PrintersDlgs, Forms, Controls, Graphics, Dialogs,</div><div>  StdCtrls,Messages,Buttons;</div><div><br></div><div>type</div><div><br></div><div>  { TPrinterTest }</div><div><br></div><div>  TPrinterTest = class(TForm)</div><div>    Button1: TButton;</div><div>    PageSetupDialog1: TPageSetupDialog;</div><div>    PrintDialog1: TPrintDialog;</div><div>    PrinterSetupDialog1: TPrinterSetupDialog;</div><div>    procedure Button1Click(Sender: TObject);</div><div>    procedure FormCreate(Sender: TObject);</div><div>  private</div><div>    { private declarations }</div><div>  public</div><div>    { public declarations }</div><div>  end;</div><div><br></div><div>var</div><div>  PrinterTest: TPrinterTest;</div><div><br></div><div>implementation</div><div><br></div><div>{$R *.lfm}</div><div><br></div><div>{ TPrinterTest }</div><div><br></div><div>procedure TPrinterTest.Button1Click(Sender: TObject);</div><div>var message_string:string;</div><div>begin</div><div>  PrinterSetupDialog1.Execute;</div><div>    if PrintDialog1.Execute then message_string:='Executed ok' else message_string:=</div><div>    'Not executed';</div><div>    if messagedlg(message_string,mtconfirmation,[mbok],0)=mrok then</div><div>end;</div><div><br></div><div>procedure TPrinterTest.FormCreate(Sender: TObject);</div><div>begin</div><div><br></div><div>end;</div><div><br></div><div>end.</div><div><br></div><div><br></div><div>{here is the lpr}      </div><div> program printertest;</div><div><br></div><div>{$mode objfpc}{$H+}</div><div><br></div><div>uses</div><div>  {$IFDEF UNIX}{$IFDEF UseCThreads}</div><div>  cthreads,printertestunit</div><div>  {$ENDIF}{$ENDIF}</div><div>  Interfaces, // this includes the LCL widgetset</div><div>  Forms, printertestunit, printer4lazarus</div><div>  { you can add units after this };</div><div><br></div><div>{$R *.res}</div><div><br></div><div>var MyTest:TPrinterTest;</div><div>begin</div><div>  RequireDerivedFormResource := True;</div><div>  Application.Initialize;</div><div>  MyTest:=TPrinterTest.Create(application);</div><div>  Application.Run;</div><div>end.</div><div>               </div></div><div>Required Packages are LCL and Printer4lazarus.</div><div><br></div><div>When I execute button1click I get the following error:</div><div>"Project printertest raised exception class 'RunError(217)'"</div><div><br></div><div>Clicking on Continue I get the subsequent error message:</div><div>Project printertest raised exception class 'EControlC' with message: 'Control-C hit.'</div><div><br></div><div>Any ideas on this? </div></div>