unit DPrintApproveReqA; interface uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls; type TDlgPrintApproveReqA = class(TForm) Label1: TLabel; btnApprove: TButton; btnCancel: TButton; procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure btnCancelClick(Sender: TObject); procedure btnApproveClick(Sender: TObject); private { Private declarations } sApproveUrl_: String; public { Public declarations } Constructor Create(aOwner: TComponent; nType: Integer; sApproveUrl: String); procedure CreateParams(var Params: TCreateParams); override; // 작업표시줄에 표시 procedure process_WM_SYSCOMMAND(var msg: TWMSysCommand); Message WM_SYSCOMMAND; end; var DlgPrintApproveReqA: TDlgPrintApproveReqA; implementation uses ManagerService, Tocsg.Shell, GlobalDefine, DefineHelper, Tocsg.Path, superobject, Tocsg.Process; resourcestring RS_MsgConfirm = '확인하시고 승인 바랍니다'; RS_UsbExcept = 'USB 매체 예외'; RS_MsgUsbExcept = 'USB 매체 예외가 요청 되었습니다.'; RS_UrlExcept = '브라우저 접근 예외'; RS_MsgUrlExcept = '브라우저 접근 예외가 요청 되었습니다.'; RS_MtpExcept = 'MTP 매체 예외'; RS_MtpUrlExcept = 'MTP 매체 예외 요청 되었습니다.'; RS_BtExcept = 'Bluetooth 매체 예외'; RS_BtUrlExcept = 'Bluetooth 매체 예외 요청 되었습니다.'; RS_CdExcept = 'CD/DVD 매체 예외'; RS_CdUrlExcept = 'CD/DVD 매체 예외 요청 되었습니다.'; {$R *.dfm} Constructor TDlgPrintApproveReqA.Create(aOwner: TComponent; nType: Integer; sApproveUrl: String); begin Inherited Create(aOwner); sApproveUrl_ := sApproveUrl; case nType of 2 : begin Caption := RS_UsbExcept; Label1.Caption := RS_MsgUsbExcept + #13#10#13#10 + RS_MsgConfirm; end; 3 : begin Caption := RS_UrlExcept; Label1.Caption := RS_MsgUrlExcept + #13#10#13#10 + RS_MsgConfirm; end; 4 : // DRM 복호화 begin Caption := RS_UrlExcept; Label1.Caption := RS_MsgUrlExcept + #13#10#13#10 + RS_MsgConfirm; end; 5 : // 파일 반출 begin Caption := RS_UrlExcept; Label1.Caption := RS_MsgUrlExcept + #13#10#13#10 + RS_MsgConfirm; end; 6 : // MTP begin Caption := RS_MtpExcept; Label1.Caption := RS_MtpUrlExcept + #13#10#13#10 + RS_MsgConfirm; end; 7 : // Bluetooth begin Caption := RS_BtExcept; Label1.Caption := RS_BtUrlExcept + #13#10#13#10 + RS_MsgConfirm; end; 8 : // CD/DVD begin Caption := RS_CdExcept; Label1.Caption := RS_CdUrlExcept + #13#10#13#10 + RS_MsgConfirm; end; end; end; procedure TDlgPrintApproveReqA.CreateParams(var Params: TCreateParams); begin Inherited CreateParams(Params); Params.ExStyle := WS_EX_APPWINDOW; end; procedure TDlgPrintApproveReqA.FormClose(Sender: TObject; var Action: TCloseAction); begin Action := TCloseAction.caFree; end; procedure TDlgPrintApproveReqA.btnApproveClick(Sender: TObject); begin Hide; // ExecutePath(gMgSvc.DestIPort + sApproveUrl_); var sHlpExe: String := GetRunExePathDir + DIR_CONF + EXE_HLP; if FileExists(sHlpExe) then begin var O: ISuperObject := SO; O.I['RcvWnd'] := Handle; O.I['Cmd'] := HPCMD_EXECUTE_FILE; O.S['Path'] := gMgSvc.DestIPort + sApproveUrl_; SaveJsonObjToFile(O, GetRunExePathDir + DIR_CONF + DAT_PARAM); {$IFDEF DEBUG} ExecutePath(sHlpExe); {$ELSE} ExecuteAppAsUser('explorer.exe', sHlpExe, '', SW_SHOWNORMAL); {$ENDIF} end else ExecutePath(gMgSvc.DestIPort + sApproveUrl_); end; procedure TDlgPrintApproveReqA.btnCancelClick(Sender: TObject); begin Close; end; procedure TDlgPrintApproveReqA.process_WM_SYSCOMMAND(var msg: TWMSysCommand); begin if msg.Msg = SC_CLOSE then begin btnCancel.Click; exit; end; Inherited; end; end.