

Brian Evans
-
Content Count
417 -
Joined
-
Last visited
-
Days Won
6
Posts posted by Brian Evans
-
-
The service pack doesn't include the DLL. The universal C runtime does which for Server 2008 R2 needs to have Windows Server 2008 R2 Service Pack 1 (SP1) installed.
Update for Universal C Runtime in Windows - Microsoft Support
Also Windows Server 2008 and Windows Server 2008 R2 are different operating systems analogous to Windows Vista and Windows 7 on the desktop. Service packs and updates for each are not interchangeable.
There is also an App-local deployment of the Universal CRT available (so just DLLs in your executable directory). Described/mentioned in the articles linked below.
Introducing the Universal CRT - C++ Team Blog (microsoft.com)
-
10 hours ago, DelphiUdIT said:I don't have any source that I can report, only chats and some information from unofficial sources. But the optional WOW64 in Windows Server configuration is surely a start.
Of course, like @Brian Evans said this path is not clear.
WOW64 was an optional component starting with Windows Server 2008 R2 Server Core which came out over 14 years ago.
-
Postman is a popular tool to call and test REST APIs during development. It is not specific to Delphi. Once you know the calls and responses from the APIs you can work on accessing them in Delphi.
To see the underlying REST API used by the web page use developer mode/tools in your browser. Refresh the page with developer tools open and check the network tab to see the requests and responses made.
-
5 hours ago, DelphiUdIT said:As the latest rumor, more or less accredited, it seems that Microsoft will abandon WOW64 technology (emulation for 32-bit applications). The transition will be gradual but inexorable. It has already started with Servers, where WOW64 is optional.
The chance of desktop or server support for 32-bit Windows applications being abandoned is close to zero. Support for running 16-bit Win16 applications on the desktop only went away with Windows 11 and is currently still supported under Windows 10 32-bit edition. Any attempt will mean delayed Windows upgrades until it is restored.
I saw the same thing with support for Xenix 286 binaries in SCO OpenServer- they kept dropping support only to add it back to capture customers who wanted a new server + OS to run old line of bussiness applications. Such applications can have incredibly long lives and healthy budgets to keep them running on supported servers by upgrading hardware and operating systems. Windows has accumulated many such applications.
-
1
-
-
Too much effort required to reproduce. That leaves just others who might have seen the exact issue already - a smaller group than those who could debug or investigate it if given an easy to run and debug reproduction of the issue.
-
Hard to recommended anything with zero requirements listed.
It is available as a service if you have the money from providers like Automatic License Plate Recognition - High Accuracy ALPR (platerecognizer.com).
-
1
-
-
Microsoft OneNote is a decent clipping / note taking application if you are already used to Office applications. It is free to download and use with some premium features requiring a Microsoft 365 subscription.
-
Note those slashes are backwards for UNC which uses \\server\drive\path .
-
The higher editions of Delphi include source for the various FireDac adapters/drivers. Most are for SQL databases of some form. Not sure how easy it would be to match up with FileMan/Mumps/M which is not relational and doesn't always include enough metadata for a driver to figure things out without more help.
A third-party developer (CDATA) made a lot of FireDac connectors for various things (https://www.cdata.com/firedac/) but nothing for FileMan/Mumps/M. That hints it may not be a small project.
-
Would help if the poster mentioned what the leak was.
-
Common to relax or remove timeouts when debugging, especially any that are short. It does make an application behave differently when debugging but at least you can use break points and step through code. This includes server-side timeouts - the server needs to be more patient to give you a chance to step through code.
if IsDebuggerPresent then .........
Odd it behaves so badly, usually you just see problems later on.
-
Usually use something like Process Monitor - Sysinternals | Microsoft Learn to see what it is doing / trying to do.
-
1
-
-
Embarcadero doesn't do clustering - just look at Interbase and RAD Server. The result is poor availability of services. While a bit complex Windows Server Failover Clustering with a cluster aware database provides solid availability during both maintence and hardware failures.
This downtime might be a needed dose of reality - claiming "Enterprise" services with such poor availability is not a good look.
-
1
-
-
Looks like some things are starting to come back online.
QA portal working.
Registered Products Portal working.
-
Look at and compare the call stacks between the multiple hits of the breakpoint.
-
1
-
-
7 minutes ago, Ian Branch said:Which I think will do the job, but I can't find out where/how PW_CLIENTONLY is declared/defined.
What unit do I need to add???
Regards & TIA,
Ian
It's a Windows API call.
https://learn.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-printwindow
-
8 hours ago, JonRobertson said:I wouldn't say FireDAC succeeded ADO/dbGo. I would agree that FireDAC succeeded dbExpress.
As far as I know, FireDAC uses SQL Native Client, which Microsoft deprecated, I think in 2019. Microsoft no longer updates it or supports it and Native Client is not fully compatible with newer versions of SQL Server. There is a QC to add support for MSOLEDBSQL to FireDAC, but that QC was closed.
Microsoft has muddied the waters regarding database drivers over the years. Firedac has no problems using the latest ODBC Driver 18 for SQL Server which is currently one of the two methods they suggest going forward.
Driver history for Microsoft SQL Server - SQL Server | Microsoft Learn
Download ODBC Driver for SQL Server - ODBC Driver for SQL Server | Microsoft Learn
-
Some of the developers that worked on FlashFiler for TurboPower produced NexusDB to target the same market. FlashFiler itself was released as opensource along with most TurboPower products when TurboPower exited the Delphi third party library market.
NexusDB (at least older versions) came with conversion utilities to convert from FlashFiler. They offer a Free Embedded Version (available through GetIt in the Delphi IDE).
- Database Importers - import tables from other databases (FlashFiler, BDE, ADO) into NexusDB tables. Full source included that easily adapts to other databases
- Source converter assistant - helps convert FlashFiler source code into NexusDB compliant source
-
Libraries that support editing/sequencing and playing MIDI and/or MOD/Tracker files while overkill for a metronome have all the parts to play sounds periodically with looping. Most have callbacks so a visual of playback can be maintained. Bit more work to get started but might be worth it to hand off the lower-level stuff needed for accurate playback.
-
8 minutes ago, aehimself said:Aaaaand jackpot! Adding Application.SingleBufferingInRemoteSessions := False solves the issue for good, no more dimmed memo is visible through RDP!
The only question which I have remaining - if DoubleBuffered is false everywhere in the test application, how come enforcing single buffering makes a difference? Shouldn't that be the default, if .DoubleBuffered is false on the form and on the frame?
Likely interacts with the WS_EX_LAYERED style in some way as that style does do some extra work (composes and repaints layered windows and the windows of underlying applications).
Window Features - Layered Windows - Win32 apps | Microsoft Learn
Extended Window Styles (Winuser.h) - Win32 apps | Microsoft Learn
-
More than just not ideal. Logging should have minimal impact which means introducing lock contention is counterproductive. The locks will change the runtime behaviour of the processes introducing coupling, uncertainly and variance. Performance issues will have admins turn off logging in production then when issues need to be investigated turning it back on means the processes behave differently frustrating attempts to reproduce those issues.
Most go with one of:
1) One log file per process + read them into a combined view as needed.
2) A logging process of some sort that other processes send log message to.
-
1 hour ago, Steve Maughan said:@Cristian Peța you found it!! When I disable the ASLR in Delphi 11.3 it also runs fine in 64 bit mode. That makes sense. MANY THANKS!
Now the question is, how do I make it work with ASLR enabled.
— Steve
It will crash if the top thirty-two bits of any pointer handled by the buggy code are not all zeroes. That just happens more often if ASLR is enabled or all the time if ASLR + the high entropy allocator is enabled.
-
1
-
-
The History tab the IDE editor shows them and lets you compare between the different versions. At the bottom right there are Code Design and History tabs. When the History tab is active there are Contents, Information and Differences tabs on the bottom left.
There is also an Autoreover feature that will periodically save changes to modified files (default every 10 minutes) to a _recovery directory in case the IDE crashes. IDE -> Saving and Recovering.
-
RadStudio 12,: IDE F1 key, The context sensitive help doesn't show up
in Delphi IDE and APIs
Posted
Works fine here - it does tend to just bring up IDE help if the cursor is not on a type/unit with direct help available. So Form1 / TForm1 brings up Code Editor help while on Form it brings up Vcl.Forms.TForm help.