Jump to content

Ian Branch

Members
  • Content Count

    1274
  • Joined

  • Last visited

  • Days Won

    3

Everything posted by Ian Branch

  1. Hi Thomas, Rev 3209 Builds in D2007, D10.3.3 & S10.4 OK. Got the attached message when I run D10.4. Can't find TFormHotKeysExport.bmp on the PC. Regards, Ian
  2. Oh Dear! D2007, D10.3.3 & D10.4. GExperts svn rev 3201. Get similar as the Attached error on all three Delphis when building. The D2007 has a slightly different error report. Happens on either an svn update or a fresh full svn pull. Hmmm. Is Delphis the plural of Delphi?? Or is it Delphies?? Regards, Ian
  3. Ian Branch

    IDE Fixpack Sydney

    Agreed. I'd suggest putting him on the IDE development staff but he may end up in a black hole. πŸ˜‰
  4. Ian Branch

    ParnassusCoreEditor.dll AccessViolation

    I have the same issue. 😞 Moving into D10.4 so I deleted BM from D10.3.3. Still rather have it in both until all project are updated...
  5. Hi Team, Having a SQL statement into the SQL of a Query. When I open it I get the normal String List editor dialog, no issues. If I then click the 'Code Editor...' button it opens the SQL into the Editor however I immediately get a "Access violation at address 207AF82F in module 'coreide270.bpl'. Read of address 00000000." error message. No matter what I try to do in the editor the error message keeps popping up. This is the error trace from the error message.. =============================== [207AF82F]{coreide270.bpl} EditorBuffer.TEditView.DrawPanel (Line 5820, "EditorBuffer.pas" + 59) + $14 [271D2AD8]{EurekaLogCore270.bpl} Especificdelphi.IsCppExceptionCode + $20 [27263606]{EurekaLogCore270.bpl} Eexceptioninfocpp.ECppException + $266 [27266A2C]{EurekaLogCore270.bpl} Eexceptioninfobcb.EBCPPStdException.GetStdException + $184 [27267EDC]{EurekaLogCore270.bpl} Eexceptioninfollvm.EBCPPStdException.GetStdException + $11C [50060D57]{rtl270.bpl } System.@HandleAnyException (Line 20743, "System.pas" + 13) + $0 [204719AE]{coreide270.bpl} VirtFile.TExternalFileSystem.GetFilter (Line 237, "VirtFile.pas" + 4) + $2 [204719C3]{coreide270.bpl} VirtFile.TExternalFileSystem.GetFilter (Line 238, "VirtFile.pas" + 5) + $10 [207AF826]{coreide270.bpl} EditorBuffer.TEditView.DrawPanel (Line 5820, "EditorBuffer.pas" + 59) + $B [207E9022]{coreide270.bpl} EditorForm.TEditWindow.StatusBarDrawPanel (Line 3003, "EditorForm.pas" + 4) + $11 [50D611DF]{vcl270.bpl } Vcl.ComCtrls.TCustomStatusBar.DrawPanel (Line 7367, "Vcl.ComCtrls.pas" + 2) + $E [50D8DAB0]{vcl270.bpl } Vcl.ComCtrls.TStatusBarStyleHook.Paint (Line 33455, "Vcl.ComCtrls.pas" + 122) + $19 [50DF6D8C]{vcl270.bpl } Vcl.Themes.TStyleHook.WMPaint (Line 7223, "Vcl.Themes.pas" + 18) + $12 [50F4C99F]{vcl270.bpl } Vcl.Styles.TCustomStyle.SourceLoaded (Line 3310, "Vcl.Styles.pas" + 1) + $13 [50DF7202]{vcl270.bpl } Vcl.Themes.TStyleHook.WndProc (Line 7394, "Vcl.Themes.pas" + 38) + $6 [50D8DB8C]{vcl270.bpl } Vcl.ComCtrls.TStatusBarStyleHook.WndProc (Line 33476, "Vcl.ComCtrls.pas" + 0) + $0 [50DF6A26]{vcl270.bpl } Vcl.Themes.TStyleHook.HandleMessage (Line 7107, "Vcl.Themes.pas" + 20) + $6 [50F4D17E]{vcl270.bpl } Vcl.Styles.TStyleEngine.HandleMessage (Line 3598, "Vcl.Styles.pas" + 22) + $B [50DF39C0]{vcl270.bpl } Vcl.Themes.TStyleManager.HandleMessage (Line 5662, "Vcl.Themes.pas" + 11) + $11 [50CF9FC7]{vcl270.bpl } Vcl.Controls.TWinControl.DoHandleStyleMessage (Line 9344, "Vcl.Controls.pas" + 0) + $F [50CFB685]{vcl270.bpl } Vcl.Controls.TWinControl.WndProc (Line 10256, "Vcl.Controls.pas" + 1) + $4A [50CFB230]{vcl270.bpl } Vcl.Controls.TWinControl.MainWndProc (Line 10120, "Vcl.Controls.pas" + 3) + $6 [50181184]{rtl270.bpl } System.Classes.StdWndProc (Line 17989, "System.Classes.pas" + 8) + $0 [5006465D]{rtl270.bpl } System.@FinalizeArray (Line 33070, "System.pas" + 99) + $3 [12478278]{CnWizards_D104S.DLL} CnSrcEditorMisc.TCnSrcEditorMisc.OnAppMessage (Line 491, "CnSrcEditorMisc.pas" + 67) + $4A [50E5A71F]{vcl270.bpl } Vcl.Forms.TApplication.ProcessMessage (Line 11002, "Vcl.Forms.pas" + 23) + $1 [50E5A762]{vcl270.bpl } Vcl.Forms.TApplication.HandleMessage (Line 11032, "Vcl.Forms.pas" + 1) + $4 [50E5AA95]{vcl270.bpl } Vcl.Forms.TApplication.Run (Line 11170, "Vcl.Forms.pas" + 26) + $3 [0051E104]{bds.exe } bds.bds (Line 222, "" + 13) + $2 ======================================================== I tried different Query components with the same result. Can anybody confirm this issue or is it just me? This doesn't happen with the same components in D10.3.3. Regards, Ian
  6. Ian Branch

    D10.4 - Possible Bug when editing SQL

    Confirmed.
  7. Ian Branch

    D10.4 - Possible Bug when editing SQL

    Tks Uwe, Feel free to add your own input and comments/vote to the RSP. Ian
  8. Ian Branch

    D10.4 - Possible Bug when editing SQL

    Bug report created. https://quality.embarcadero.com/browse/RSP-29581
  9. Ian Branch

    D10.4 - Possible Bug when editing SQL

    I just removed the two indicated add-ons and get the same result.
  10. Ian Branch

    D10.4 - Possible Bug when editing SQL

    Hi Uwe, With a clean D10.4 or with some 3rd party add ons? Ian
  11. Ian Branch

    wuppdi Welcome Page for Delphi 10.4?

    Ah Ha! Done. Tks.
  12. Ian Branch

    wuppdi Welcome Page for Delphi 10.4?

    Be nice if there was a way to copy/transfer the Favourites from D10.3.3 WuppdiWP to D10.4 WuppdiWP.
  13. Ian Branch

    Is this deliberate?

    Latest Gexperts SVN, D10.3.3. On creating a new Message using the Message Dialog Wizard I now get this sort of message code.. procedure TForm3.FormShow(Sender: TObject); begin MessageDlg(_('Test message.'), mtInformation, [mbOK], 0); end; Note the '_(' & ')' around the message. Something new. And the '_' is an undeclared identifier. Take the '_(' & ')' out and all is good in the world. Ian
  14. Ian Branch

    Is this deliberate?

    Fair enough. I wasn't sure if it was a bug or a setting.
  15. Ian Branch

    Is this deliberate?

    Ha. Ha! Didn't twig. Also, in my case, the Dialog opens like this.. The same in D10.4. D2007 Opens OK with the full dialog. Regards & Tks, Ian
  16. Ian Branch

    Detect Windows shutdown?

    Hmmm. OK. I still have something amiss/NQR. On telling the PC to shutdown with the App running Windows immediately goes to the Shutting down screen. Reminder, I am on a Win 10 PC. This is my full code att.. unit Unit3; interface uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs; type TForm3 = class(TForm) procedure FormShow(Sender: TObject); // private { Private declarations } procedure WMQueryEndSession(var Msg: TWMQueryEndSession); message WM_QueryEndSession; // detect Windows shutdown message procedure SaveData; // routine to save data to disk public { Public declarations } end; function ShutdownBlockReasonCreate(Handle: hWnd; Reason: LPCWSTR): Bool; stdcall; external user32; function ShutdownBlockReasonDestroy(Handle: hWnd): Bool; stdcall; external user32; var Form3: TForm3; DataToBeSaved: Boolean; implementation {$R *.dfm} procedure TForm3.WMQueryEndSession(var Msg: TWMQueryEndSession); begin if DataToBeSaved then begin Msg.Result := lResult(True); // disallow Windows from shutting down SaveData; end; Msg.Result := lResult(False); // allow Windows shutdown end; // Set DataToBeSaved to False after saving data procedure TForm3.FormShow(Sender: TObject); begin DataToBeSaved := True; end; procedure TForm3.SaveData; begin ShutdownBlockReasonCreate(Application.MainForm.Handle, 'please wait while muting...'); // Save data to disk files // ... beep; beep; beep; DataToBeSaved := False; // ShutdownBlockReasonDestroy(Application.MainForm.Handle); end; end. At least it builds now. πŸ˜‰
  17. Ian Branch

    Detect Windows shutdown?

    Ahhhh. Ha! Testing..
  18. Ian Branch

    Detect Windows shutdown?

    Yes I found it informative but I get a "E2169 Field definition not allowed after methods or properties" error pointing at the external user32; 😞 type TForm3 = class(TForm) procedure FormShow(Sender: TObject); procedure WMQueryEndSession(var Msg: TWMQueryEndSession); message WM_QueryEndSession; // detect Windows shutdown message procedure SaveData; // routine to save data to disk function ShutdownBlockReasonCreate(hWnd: HWND; Reason: LPCWSTR): Bool; stdcall; external user32; function ShutdownBlockReasonDestroy(hWnd: HWND): Bool; stdcall; external user32; The following is as I understand it att.. procedure TForm3.WMQueryEndSession(var Msg: TWMQueryEndSession); begin if DataToBeSaved then begin Msg.Result := lResult(True); // disallow Windows from shutting down SaveData; end; Msg.Result := lResult(False); // allow Windows shutdown end; // Set DataToBeSaved to False after saving data procedure TForm3.FormShow(Sender: TObject); begin DataToBeSaved := True; end; procedure TForm3.SaveData; begin ShutdownBlockReasonCreate(Application.MainForm.Handle, 'please wait while muting...'); // Save data to disk files // ... beep; beep; beep; DataToBeSaved := False; // ShutdownBlockReasonDestroy(Application.MainForm.Handle); end;
  19. Ian Branch

    Detect Windows shutdown?

    OK. I'll have another try. I have had a look at the article above and am trying to integrate the ShutdownBlockReason.... functions. Where are the declared/defined?
  20. Ian Branch

    Detect Windows shutdown?

    OK. Didn't see the "ShutdownBlockReasonCreate function" note. Had a look. It's cryptic to me and doesn't really give me any insight as to what is required. 😞 Guys, Let's forget about it. Thank you for your attempts to educate me. I apologise for my lack of knowledge/skill.
  21. Ian Branch

    Detect Windows shutdown?

    Hi Cristian, Clearly I don't understand the documentation. Hi David, IIUC the code had the 'True' & 'False' around the wrong way?? I also think the Msg.Result := 0; // disallow Windows from shutting down was in the wrong place and should have been before the ShowMessage, AND should have been.. Msg.Result := 1; // disallow Windows from shutting down I'm trying here guys but this is all new to me.
  22. Ian Branch

    Detect Windows shutdown?

    Hi Cristian, Yes I know. My issue/point is that I am NOT getting the message. Hence it would seem that the procedure isn't being called.
  23. Ian Branch

    Detect Windows shutdown?

    Hi Cristian, Thank you for your input. I don't want to stop it, just delay/pause it while the App writes to the log and closes the database gracefully. Hence the procedure TMainForm.SaveData; Then Windows can shut down. ATT the message display is purely to confirm that something is happening in the routine.
  24. Ian Branch

    Detect Windows shutdown?

    Hi Guys, Thanks to all for your input. I am out of my league here but this is what I have att from Dr Google. ;-). private { Private declarations } DataToBeSaved: Boolean; procedure WMQueryEndSession(var Msg: TWMQueryEndSession); message WM_QueryEndSession; // detect Windows shutdown message procedure SaveData; // routine to save data to disk Then.. procedure TMainForm.WMQueryEndSession(var Msg: TWMQueryEndSession); begin if DataToBeSaved then if MessageDlg('Windows is shutting down! First save data changes?', mtConfirmation, [mbYes, mbNo], 0) = mrYes then begin Msg.Result := 0; // disallow Windows from shutting down beep; SaveData; end; Msg.Result := 1; // allow Windows shutdown end; // Set DataToBeSaved to False after saving data procedure TMainForm.SaveData; begin // Save data to disk files // ... DataToBeSaved := False; end; ..... ..... procedure TMainForm.FormCreate(Sender: TObject); begin // DataToBeSaved := True; // .... .... In my Win 10 dev PC, when I tell windows to shutdown it goes straight to the green Shutting Down screen. I never see the MessageDlg prompt. 😞 Am I missing some other nuance? I noted David's comments and reference. I need this to work on my Win 10 PC as well as the Customer's Win 7, later I hope to be Win 10, PCs. Again, thoughts, suggestions, code appreciated. Regards & TIA, Ian
  25. Thank you for your continued commitment and support to make a great tool even better.
Γ—