Being Secured Against Hackers and Criminals dealing with Covid-19 and other viruses

Rad Studio Delphi Development
Cyber threats are real. Everyone is being attacked on a daily basis from outside agents. These agents for the most part have criminal intent on using the Covid-19 fear. You must be on guard against emails that have attachments. User email accounts, contact information or even companies are used to fake a person into thinking the email is from someone they know. You must check the actual email address where the item came from. For the most part an email could come from an insurance company or finance house. The hacker will show the company logo but the email address has a fake domain. Security Steps 1. Install and maintain anti-virus software. One recommendation is Norton Security which will scan for a wide range of threats, but no one program…
Read More

Using Delphi Firedac to compact and repair a MS Access Database.

Rad Studio Delphi Development
Over the years Delphi Firedac continues to grow as a robust programming language. Delphi Firedac provides a new way to compact and repair a database. The tools provide developers with components or services that create superb applications. Delphi Firedac provides a unique set of Universal Data Access Components for developing multi-device database applications. This will show the older method of compacting and repairing MS Access databases. The code listed below demonstrates the process. Very straight forward you need to create the object, populate the commands and you are ready to go. function CompactAndRepair(DB: string): Boolean; var v: OLEvariant; begin Result := True; try v := CreateOLEObject('JRO.JetEngine'); try V.CompactDatabase('Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+DB, 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+DB+'compacted;Jet OLEDB:Engine Type=5'); DeleteFile(DB); RenameFile(DB+'compacted',DB); finally V := Unassigned; end; except Result := False; end; end; Delphi Firedac now has…
Read More

Gotchas when using Delphi Update

Rad Studio Delphi Development, Software development Concepts
Sometimes when you are programming using Embarcadero Delphi you will come up with a few Gotchas. These are not bugs but more as a pain. Initially you create an application in a debug mode while you are testing the code. You have a icon for the application making it look professional and just go to the release state. The icon may or may be what you expected. Your debug application has the correct icon but your release doesn't. Pretty strange but Windows keeps an icon cache. The simple thing would be to rename your executable and suddenly it looks good. You wonder why Windows would do that ? It is Windows and you have to live with that. Click on this link to see what else you can do to…
Read More

How to restart a VCL Delphi application while using a Mutex

Rad Studio Delphi Development
How to restart a VCL Delphi application while using a Mutex. This article puts all of the research in one single page. Using a mutex prevents multiple application instances from occurring. You may wonder why would you wish to restart an application. It doesn't mean there was a software defect in the code. Application settings have changed. What is a mutex A mutex object is a synchronization mechanism designed to ensure mutually exclusive access to a single resource that is shared among a set of kernel-mode threads. Using a mutex can ensure that there is only one instance of your application executing. A unique name should be used when starting the application. The simplest way is to use your application name and/or a shorten name that would be unique when…
Read More

Terminating an Application when using Delphi

Rad Studio Delphi Development, Software development Concepts
Sometimes there are reasons to terminate an application due to unforeseeable issues and there has been a lot of talk how to handle this event. Let's go over a simple application and break down what needs to be done. Go to the code The initial code opens up a splash screen, displays it and finally releases it after a few moments. Splashscreen.Show; Splashscreen.Update; Sleep(2000); Splashscreen.Free; Application.Initialize; The application defaults are set with the title and the help file as well as creating the data module along with the login screen. Application.DefaultFont.Name := 'Arial'; Application.MainFormOnTaskBar := True; Application.Title := 'Application Name'; Application.HelpFile := ExtractFilePath(Application.ExeName) + 'Help.CHM'; Application.CreateForm(TDM, DM); Application.CreateForm(TfrmLogin, frmLogin); The application at this point will open up the login screen allowing the user to enter their information. The license is…
Read More