-
Content Count
550 -
Joined
-
Last visited
-
Days Won
11
Everything posted by corneliusdavid
-
The Delphi Parser - FIBPlus, BDE, legacy Migration
corneliusdavid replied to Jasonjac2's topic in Delphi Third-Party
Are you asking about my progress with reFind? I've got a pretty long list of regular expressions but it's heavily concentrated on the specific libraries in use at the company for which I work. We have base forms and much of the script deals with commenting out code or adding TODOs to instruct the programmer on how to change a program to work with the updated libraries and base forms. But some of them might be useful as examples, like the conversion from TPageControl to TRzPageControl or TToolbar to TRzToolbar. Your Delphi installation comes with ReFind and several example rule files you can use as a starting point; there's one to migrate from BDE to FireDAC which would be quite relevant to your task. I have never used FIBPlus so I wouldn't be very helpful on that end.- 11 replies
-
Your question is quite vague and is open to a variety of interpretations; you need to be much more specific about what you want. For example: Do you want to convert your VCL code to something like UniGUI where the program runs on a Windows server and generates HTML? Do you want to know about options where you can add a library like Thinfinity Virtual UI to output your VCL to HTML? Do you want simply want your VCL program to access data from a cloud? Do you want to convert your application from accessing a local database to reading REST responses from a RAD Server (since you mentioned it)? Do you want to convert your application to a WebBroker application that generates HTML natively?
-
The Delphi Parser - FIBPlus, BDE, legacy Migration
corneliusdavid replied to Jasonjac2's topic in Delphi Third-Party
I used (or tried to use) Delphi Parser about three years ago. I don't have FIBPlus and I was using their VCL->UniGUI migration tool, so my experience may not be as relevant but I did work with their script quite a bit, fixing several missing standard VCL controls, adding support for RaizeControls, and several other things. My attempt was to take a working Delphi XE desktop (VCL) application and migrate it to UniGUI to turn it into a web app. I never got it completed and don't remember all the reasons why but I do remember being frustrated at Delphi Parser's interface, where each time you run it, you basically have to start the program over and go through several steps. It was a slow, iterative process and while suggestions for improvement were sent to the author (who seemed to appreciate them), none of them ever made it into an update. Have you looked at reFind? I'm using that in a major migration from Delphi 5 and the BDE to Delphi 12 and FireDAC. Perhaps between these two tools, you'll find a solution.- 11 replies
-
Putting Delphi Application inside web page
corneliusdavid replied to Robert Gilland's topic in Delphi Third-Party
I haven't for a long time but am thinking of trying it again as I have a different user for which it might work well (they're currently using Remote Desktop). My recollection is that there are multiple layers and methods of security possible. You can use a simple username/password over HTTPS, use MFA, and even lock it down further; it's been a while but I remember being quite impressed with its flexibility. -
Thanks for the correction; I missed the "and ..." part.
-
Looks like you were right, but only benefits C++ side of RAD Studio: https://blogs.embarcadero.com/rad-studio-12-2-athens-patch-2-available/
-
Well, who knows. The Android SDK can be updated independently (and often needs to be) between RAD Studio updates and even your screen shot shows that not all folders use the same version number. I wouldn't jump to conclusions.
-
Several things I'd check (it sounds like you already have some of these): Server - Handler Mappings: make sure ISAP-DLL is enabled for Execution Server - ISAPI and CGI Restrictions: Either "Allow unspecified ISAPI modules" or add your specific DLL to the list of allowed IIS extensions. Application Pool: Basic settings: No Managed Code; Advanced Settings: "Enable 32-bit Applications": default of False if compiling a 64-bit DLL, True otherwise. Create a new "site" and assign it your Application Pool Be sure the folder for your site (where your DLL will be placed) has permissions to run as IIS_IUSRS; you may also need "Modify" permission if it's going to write to files in that folder. To debug, use IIS, click on the site for your app, then in the right-side panel, click "Browse <mysite> on <myport>" which should give you some error details more than just "Internal server error".
-
Not necessarily; the GetIt package versions are separate from the Delphi versions (e.g. Delphi 12 is at 29.x) and can be updated independently.
-
upload file to the server for indexing in the server using browser UNIGUI application
corneliusdavid replied to mazluta's topic in Network, Cloud and Web
I'm not sure there's a "best" way; there are many options and depending on your time, abilities, security requirements, and possibly other factors, one solution may work better than others. Here are a few suggestions and you can shoot down which ones that won't work for some reason or other: Use a file-sync service (DropBox, pCloud, etc.) then your desktop app can simply save a file to a pre-selected folder and a few moments later it will be synchronized to your server. This would be the quickest and easiest to implement but you may not trust a third-party service. Set up FTP/SFTP on your server with a custom login; then implement SFTP in your desktop app to send the file to that SFTP account. I don't know UniGUI that well but if there's an easy way to provide a URL for HTTP-POST messages, then add that to your server app; your desktop app would then simply send the file in an HTTP-POST message to that URL. You could also write your own custom messaging service, the server side would listen on a specific port and your desktop would send files to that port. But why reinvent FTP? -
Putting Delphi Application inside web page
corneliusdavid replied to Robert Gilland's topic in Delphi Third-Party
It's not just a one-time price of the library and a modification to your code--that's the small part. For Thinfinity to work, it communicates with a server part installed on your web server; this has an ongoing per-user cost. It's reasonable but adds up over time so you have to figure that in. -
Error sending data: (12029) A connection with the server could not be established.
corneliusdavid replied to mazluta's topic in Network, Cloud and Web
I'm not sure what you mean by this but I'd first check the Windows Firewall on the server to make sure it has port 8090 open. This is almost always the case for me when I'm testing client/server app and it works find locally but not to a remote server. -
I personally think it's strange to introduce major features in minor releases and fix minor bugs in major releases. I think major releases (11, 12, etc) should get new features, minor releases (11.1, 11.2, 12.1, 12.2, etc) should be mostly focused on fixing minor problems and bugs. I guess people don't want to wait for new features but then what's the point of a major versus minor release?
-
Delphi 11.3 vs. Delphi 12.1 : 'View/Tool Windows/Palette' and 'View/Toolbars/Component'
corneliusdavid replied to Ruud's topic in Delphi IDE and APIs
I just confirmed this in Delphi 12.2. Looks like a bug to me--never noticed it before. Please report it on Quality Portal. -
What new features would you like to see in Delphi 13?
corneliusdavid replied to PeterPanettone's topic in Delphi IDE and APIs
I agree, but until then... I believe it's in the works. There's a "Load Multiple Packages" link at the bottom of the GetIt Package Manager but the only clue on how to use it is in the "What's New" section of the latest release stating you can select multiple JSON files. Since most people that use the GetIt Package Manager probably don't know the packages even have a .json config file, I don't consider this very useful--yet. -
What new features would you like to see in Delphi 13?
corneliusdavid replied to PeterPanettone's topic in Delphi IDE and APIs
Take a look at AutoGetIt. -
Backup the FirebirdSQL database from ext server locally
corneliusdavid replied to msd's topic in Databases
You need to have the client tools installed on the remote machine, then use gbak like this: gbak -b -user SYSDBA -password masterkey server:/path/to/database.fdb client:/path/to/backup.fbk -
Putting Delphi Application inside web page
corneliusdavid replied to Robert Gilland's topic in Delphi Third-Party
I tried this a few years ago with a Delphi XE application and it worked but we decided not to go with it. The client had very few users and I was only charging T&M so this added an ongoing cost they wouldn't have had previously plus they all had Windows desktop computers anyway so they just left it as it was. It was really cool to see it working though. -
Feature enhancement request - Filter DFM properties
corneliusdavid replied to pyscripter's topic in GExperts
That'd be great. I have tried Delphi's "Lock Controls" (on the Edit menu) but it only lasts for the current session (when you close and re-load, it's off again) and I don't remember to turn it back on. Also, when using Delphi in DPI-Aware mode, there are still changes even when I don't touch anything; I just pulled up a fairly simple form and closed it without moving anything and 12 lines of changes showed up in my Git diff, half were ExplicitXXX properties because I had the GExperts feature off, the others were ItemHeight, ClientHeight, etc.; Using DPI-Unaware mode, nothing changed (thanks, @JonRobertson for that observation!).- 11 replies
-
Feature enhancement request - Filter DFM properties
corneliusdavid replied to pyscripter's topic in GExperts
Oh really!? I hadn't thought of that but I'm starting to use DPI Unaware mode more often because there are constant annoying font size changes almost every other time I click on something or pull down a menu. Here is definitely another advantage.- 11 replies
-
Execution time difference between 32b and 64b, using static arrays
corneliusdavid replied to lg17's topic in General Help
That's interesting. I confirm and tried some variations on the single vs double types in both; my time in milliseconds is shown in the comments: {$IF Defined(WIN64)} t_reel = double; // 2880-2930 ms //t_reel = single; // 2410-2440 ms {$ELSE} //t_reel = double; // 5030-5150 ms t_reel = single; // 1170-1180 ms {$ENDIF} -
For me, it still opens GExperts Rename Component expert; and in code view, it opens the GExperts Rename Components Configuration.
-
Feature enhancement request - Filter DFM properties
corneliusdavid replied to pyscripter's topic in GExperts
I see Top/Left/Width/Height/ClientWidth/ClientHeight change a lot, too--and I'm pretty sure I don't move those components every time I open a form.- 11 replies
-
Here's my new upgrade process after having so many problems in the past: Disable User Access notifications: I do this temporarily to speed up the process. Uninstall all GetIt Packages: Run AutoGetIt, check "Installed Only" then "Refresh Package List", then select "Uninstall checked" in AutoGetIt; optionally saved checked list. Disable/Remove IDE Plug-ins: Start Delphi and using GExperts Expert Manager, disable all experts, including GExperts itself. Remove Third-party Components: Select Component > Install Packages from the Delphi menu and remove all third-party components. Backup FDConnections: make a copy of the FDConnectionDefs.ini in my "public docs"\Embarcadero\Studio\FireDAC folder. Run the installer, keeping defaults. After the installer is finished, there are similar steps to get my system set up again: Check the Path: If the Path environment variable is getting too long, create short path substitutions and replace their entries. Restore FDConnections: restore the copied FDConnectionDefs.ini. Reinstall Third-Party Components Re-Enable/Reinstall Experts: A lot of times, I find the previously disabled experts to be re-enabled and working but might have to reinstall some. Reinstall GetIt Packages: If AutoGetIt is still running, simply hit "Install Checked" otherwise, load the saved items then install them all. Re-enable User Access Notifications: Do not forget to keep your system protected against unauthorized installs!