Delphi Buttons – Create an hour glass impression while waiting

Got a chance to receive source code from a software vendor and the button on this program made me smile.

Haven’t though of it that way. But i think it works.

procedure TSFTPClientFrame.btConnectSSHClick(Sender: TObject);
var
  OldCursor: TCursor;
begin
  OldCursor := Screen.Cursor;
  try
    Screen.Cursor := crHourGlass;
    ScSSHClient.Connect;
  finally
    Screen.Cursor := OldCursor;
  end;
end;

The hour glass cursor is within the try row. Once it is done, it revert backs the cursor to the original one used. Pretty awesome.

Just wanted to share

Coffee Cup

Oracle Virtual PC – menu missing [solved]

It’s been days since the menu on top of virtual pc dissapeared after I chose the fullscreen mode. Good thing there is google.

Found the switch. And it is RIGHT-CONTROL yeah, not the left control key. It’s RIGHT+CONTROL + C

Viola! Enjoy!

Coffee Cup

Network is connected but no internet is sent [SOLVED]

connected but no internet

Recently we had this issue with our Globe fiber wifi setup. After August 1, 2024 (need to check this one as well), wifi sticks are having a hard time getting internet. We can see that the wifi is connected but no internet is received.

  • at first the culprit might be the wifi stick. standing that we have been using it for months and years, is there a cut-off for them as well?
  • second is the wifi router itself. is it defective or have reached the limit of 60 devices (based on the manual that i read) ?

So far what we did to solve this issue is to use the command prompt and then issue a ‘ipconfig / release’ and ‘ipconfig / renew’ command and viola! It’s now working.

Hope it could help someone out

Coffee Cup

Not Acceptable! An appropriate representation of the requested resource could not be found on this server. This error was generated by Mod_Security [SOLVED]

Working on programming for so many years, it amazes me that i have really much to learn. This recent issue cropped up out of nowhere.

I decided to disable mod security , which is a bad idea honestly. But true enough, i found the culprit. It seems when you pass a get parameter with special characters, our websites seem to be on high alert against hack attack

<IfModule mod_security.c>
  SecFilterEngine Off
  SecFilterScanPOST Off
</IfModule>

What i was passing is the name of a client through get command. Yeah i know . It came out as link.php?name=M&M

I changed then parameter to a session id i had given before and it solved the issue. sigh. another lesson learned.

Coffee Cup

Disable Device Driver Signing in Windows 10 [SOLVED]

The original title should be “the hash for the file is not present in the specified catalog file”. I had recently encountered apps not being installed because the has file was not there. And then i wondered. Why would software developers deploy programs without this hash thing.

After a few google searches it turns out it was microsoft thing and you can disable it.

Enjoy

Coffee Cup

To solve this problem, I had to disable Device Driver Signing. Here’s how it’s done in Windows 10.

Option 1 – Command to Enable or Disable

  1. Click the “Start” button.
  2. Type “command“.
  3. Right-click on “Command Prompt” and select “Run As Administrator“.
  4. Do one of the following:
    • To disable device driver signing, type “BCDEDIT /set nointegritychecks ON” then press “Enter
    • To enable device driver signing, type “BCDEDIT /set nointegritychecks OFF” then press “Enter

You’re done! The Device Driver setting is now modified.

Option 2 – Disable From Menus

I figured this was security that was built into Windows to prevent me from installing bad drivers. This is a feature called Device Driver Signing. After going through the steps to disable driver signing in Windows 8, I was able to get my community drivers installed. Here’s how I did it.

  1. Select the “Start” button.
  2. Type “startup”.
  3. Select “Change advanced startup settings“.
  4. Select “Restart now” under the “Advanced startup” area.
  5. Select “Troubleshoot“.
  6. Select “Advanced Options“.
  7. Select “Startup Options“.
  8. Select “Restart“.
  9. A menu will appear where you can press “7” on your keyboard to choose “Disable driver signing enforcement“.

Now Device Driver Signing should be disabled, allowing you to install any driver you like in Windows 10 until you reboot.

http://www.hackaapl.com/trouble-installing-windows-10-drivers-the-hash-for-the-file-is-not-present-fix-toggle-driver-signing/

Delphi 6 + QuickReport – Removing or Disabling the Save and Load Buttons during preview [solved]

This has been an age old question that one needs to tackle if you have clients that want to control data coming in and out of the company.

That is why I am quite happy and relieved to have found it as well.

Without further adue, here it is

uses
, QRPrntr, QRPrev;

procedure TqrpLabelGrader.QuickRep1Preview(Sender: TObject);
var
  qrStandardPreview: TQRStandardPreview;
begin
  //, QRPrntr, QRPrev;
  qrStandardPreview:=TQRStandardPreview.CreatePreview(Self, TQRPrinter(Sender));
  qrStandardPreview.SaveReport.Enabled := False;
  qrStandardPreview.LoadReport.Enabled := False;
  qrStandardPreview.Show;
end;

Enjoy

Coffee Cup

Delphi 6 : using scroll in a DBGrid with WheelMouse

There was a request to make the mouse wheel as the scrolling. I found the code and wanted to save it as well here.

Enjoy

Coffee Cup

//with delphi7

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Grids, DBGrids, DB, DBTables;

type
  TForm1 = class(TForm)
    DataSource1: TDataSource;
    Table1: TTable;
    DBGrid1: TDBGrid;
    procedure FormCreate(Sender: TObject);
    procedure DBGridMouseWheel(Sender: TObject; Shift: TShiftState;
      WheelDelta: Integer; MousePos: TPoint; var Handled: Boolean);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

  TWheelDBGrid = class(TDBGrid)
  public
    property OnMouseWheel;
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
  TWheelDBGrid(DBGrid1).OnMouseWheel := DBGridMouseWheel;
end;

function GetNumScrollLines: Integer;
begin
  SystemParametersInfo(SPI_GETWHEELSCROLLLINES, 0, @Result, 0);
end;

procedure TForm1.DBGridMouseWheel(Sender: TObject; Shift: TShiftState;
  WheelDelta: Integer; MousePos: TPoint; var Handled: Boolean);
var
  Direction: Shortint;
begin
  Direction := 1;
  if WheelDelta = 0 then
    Exit
  else if WheelDelta > 0 then
    Direction := -1;

  with TDBGrid(Sender) do
  begin
    if Assigned(DataSource) and Assigned(DataSource.DataSet) then
      DataSource.DataSet.MoveBy(Direction * GetNumScrollLines);
    Invalidate;
  end;
end;

end.

https://www.swissdelphicenter.ch/en/showcode.php?id=2142

Jpg Picture or Thumbnail Preview Not Showing On Windows

Ways to resolve Thumbnail preview issues

If you have complaints related to Thumbnail previews on your Windows 10, then simply try these fixes.

  • Check File Explorer Settings
  • Change Visual Effects Settings
  • Clear Thumbnails Cache
  • Modify Windows 10 Registry Settings
  • Edit Group Policy
  • Restore File Explorer Settings

Check File Explorer Settings

  1. Type File Explorer Options in the search box of your Windows 10 system and select the option File Explorer Options.
File Explorer Options.

2. A dialog box namely File Explorer Options will get opened. Here, switch to the View tab, and under the Advanced Settings section, ensure that Always show icons, never thumbnails option is not selected. If it is selected, then unselect it. Then, select OK.

Always show icons, never thumbnails

3. If the option was selected, then deselecting it might solve your problem.

Change Visual Effect Settings

On your Windows 10 system, search View advanced system settings and select the same search result to open it.

View advanced system settings

Next, a dialogue box System Properties will get opened. On the Advanced tab, click the Settings option under the Performance section.

System Properties

The Performance Options dialogue box will get opened. On the Visual Effects tab, under the Custom section, select two checkboxes – Save taskbar thumbnail previews and Show thumbnails instead of icons. Click on OK to save the changes.

Save taskbar thumbnail previews
  • Now, check if thumbnails previews appear again.

Clear Thumbnails Cache

  1. Go to the Search menu and type Disk cleanup. Select the search result Disk Cleanup.
  2. Next, you need to select the system drive on which you want to perform the scan and cleanup. Click OK after the selection.
  3. The drive scanning process will get started. Wait till it finishes.
  4. Now, on the Disk Cleanup for System dialogue box, select Thumbnails and Temporary files checkboxes under Files to delete section. Click OK to delete the selections.
Thumbnails and Temporary files

5. It will delete the current (may be corrupted) Thumbnails cache from your system drive and Windows will create the new cache again on need.

Modify Windows 10 Registry Settings

  1. Press the Windows button and R alphabet on the keyboard together. Type regedit and click on OK.
  2. The Windows Registry Editor page will get opened. Go to the following locations one-by-one and create a DWORD name with “Disable Thumbnails” and set its value to 1 and click OK. (Value 1 = Disabling DWORD, Value 0 = Enabling DWORD.

The locations are

HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer

And

  1. HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer
Disable Thumbnails”

3. Exit the Registry Editor and restart the system.

Edit Group Policy

  1. Type gpedit.msc in the Windows 10 run box (press Windows and R together) and click OK.
  2. The Local Group Policy Editor page will get opened. Here, on the left panel, follow this location –

User Configuration>Administrative Templates>Start Menu and Taskbar

3. Now, from the right panel, double click on the option Turn off taskbar thumbnails.

Turn off taskbar thumbnails.

4. On the next page, select the Disabled option and click OK.

Disabled

5. Also, on the main Local Group Policy Editor page, move to this location –User Configuration>Administrative Templates>Windows components>File Explorer. Expand File Explorer.

User Configuration

6. From the right panel, double-click on Turn off the display of thumbnails and only display icons.

Turn off the display of thumbnails
Disabled

7. Again select Disabled option and click OK.

8. Now exit the Local Group Policy Editor and restart your Windows 10 system.

Restore File Explorer Settings

  1. On the Search menu of your system, type File Explorer Options, and from the search result, click on File Explorer Options.
  2. The File Explorer Options page will get opened. Here on the General tab, click on Restore Defaults option.
Restore Defaults

3. Perform the same on the View tab.

4. Wait till the restoring gets completed. Click OK.

https://www.linkedin.com/pulse/thumbnail-previews-showing-windows-10-kerneldatarecovery/

Enjoy

Coffee Cup

Delphi Internal Error LA33 and RLink32.dll – Finally Found Out Why [SOLVED]

When doing Delphi App i encounter LA33 and RLink32 error which causes the app to crash during compiling. Sometimes I get away with being able to compile the EXE on some days, but other days, it just won’t do.

 Access violation at address 062B487B in module RLINK32.DLL. Read of address 0C5DOD4A.

I researched and encountered the following solutions

  1. Remove the .res file of your application. This would result in loosing your icon file. So when i do this step, i need to re-attach the icon file again.
  2. Removing the .dcu files from your application. This sometimes work from me but a lot of times, it doesn’t as well.
  3. I had increased the ram of my pc since when i read it, it was a memory problem. So far it sped up my pc but still the problem persists.

I had researched the issue again and found out a very small link that had the same problem as mine that might not exists in a lot of other developers out there. You see, my application is branched out to different companies under the same industry.

Let me explain, so if you have 3 companies buying-and-selling, i would create a single application that is saved 3 times in the same folder. So we have company1.exe, company2.exe and company3.exe.

As it turns out in the project file of the app, when the system uses the word {$R *.res} it tries to read the .res file fo the project. Since i had 3 of them, it made the compiler dizzy which one to choose. So when i erased the .res file before it sort of worked for a while

This is the solution. In the project unit, please change the line to {$R FileName.res} where the FileName is the name of the exe you are creating.

So instead of using {$R *.res} , please write {$R company1.res}

This is the original reply from one of the posts that i found. Thank you Lepe.

This error usually occurs when we save the project 2 times in the same folder with different names, in which case 2 files are created Resource:

Project1.res
MyApplication.res

I've ever had problems like that, and I solved it like this, although now I test with bds2006 and I don't get any warning .

Enjoy

Coffee Cup

https://www.clubdelphi.com/foros/showthread.php?t=50948