-
Content Count
3416 -
Joined
-
Last visited
-
Days Won
113
Everything posted by Lars Fosdal
-
Remote Debugging "Attach To Process" on non-Windows platforms
Lars Fosdal replied to @AT's topic in Delphi IDE and APIs
@@AT I assume you have read these? https://docwiki.embarcadero.com/RADStudio/Alexandria/en/Attach_to_Process https://docwiki.embarcadero.com/RADStudio/Alexandria/en/Attaching_to_a_Running_Process -
Seeking Collaboration: Creating a Delphi Component for STM32 Boards
Lars Fosdal replied to techdesk's topic in General Help
It appears we'll soon need the latter for forum posts... -
Have you compared the code for the event handler method with the declaration in the StringGrid class that has the event property? It sounds really weird that the event handler lost it's code, though.
-
What new features would you like to see in Delphi 13?
Lars Fosdal replied to PeterPanettone's topic in Delphi IDE and APIs
Of which some should be registered as feature requests. I agree, it is not that frequently we see them come to fruition - but - let's stay insane in this context. And... await the return of the QP. -
Determining what driver FireDAC uses for MSSQL connection
Lars Fosdal replied to Ron Schuster's topic in Databases
@Ron Schuster You can explicitly control which driver you want to use. I use this code to pick my faves. class function TPSDFireDatabasePoolMSSQL.FindBestDriver(const Link: TFDPhysMSSQLDriverLink): String; const // Constants copied from implementation section of FireDAC.Phys.MSSQL C_SQL_SERVER = 'SQL Server'; // DO NOT TRANSLATE C_2019_ODBC = 'ODBC DRIVER 19 FOR SQL SERVER'; // DO NOT TRANSLATE C_2018_ODBC = 'ODBC DRIVER 18 FOR SQL SERVER'; // DO NOT TRANSLATE C_2017_ODBC = 'ODBC DRIVER 17 FOR SQL SERVER'; // DO NOT TRANSLATE C_2016_ODBC = 'ODBC DRIVER 13 FOR SQL SERVER'; // DO NOT TRANSLATE C_2012_ODBC = 'ODBC DRIVER 11 FOR SQL SERVER'; // DO NOT TRANSLATE {$IFDEF POSIX} C_FreeTDS = 'FreeTDS'; {$ENDIF} {$IFDEF MSWINDOWS} C_2012_NC = 'SQL SERVER NATIVE CLIENT 11.0'; // DO NOT TRANSLATE {$ENDIF} var DriverList : TStringList; WantedList : TArray<String>; Driver: string; begin Result := ''; // Blank = Default WantedList := {$IFDEF MSWINDOWS} {$IFDEF SQLNative} [C_2012_NC, C_2017_ODBC, C_2016_ODBC, C_2012_ODBC] {$ELSE} [C_2018_ODBC, C_2017_ODBC, C_2016_ODBC, C_2012_NC, C_2012_ODBC] {$ENDIF} {$ENDIF} {$IFDEF POSIX} [C_2018_ODBC, C_2017_ODBC, C_2016_ODBC, C_2012_ODBC, C_FreeTDS] {$ENDIF}; DriverList := TStringList.Create; try Link.GetDrivers(DriverList); DebugOut('Available SQL drivers'); // DO NOT TRANSLATE for Driver in DriverList do DebugOut(' "' + Driver + '"'); for var Wanted in WantedList do for Driver in DriverList do begin if CompareText(Wanted , Driver) = 0 then begin DebugOut('Selected driver: "' + Driver + '"'); // DO NOT TRANSLATE BestDriver := Driver; Exit(Driver); end; end; finally DriverList.Free; end; end; which I then use to configure the connections class function TPSDFireDatabasePoolMSSQL.CreateDriverLink(const aOwner: TComponent): TFDPhysDriverLink; var Res: TFDPhysMSSQLDriverLink; begin Res := TFDPhysMSSQLDriverLink.Create(aOwner); if BestDriver = '' then BestDriver := FindBestDriver(Res); Res.ODBCDriver := BestDriver; Result := Res; end;- 5 replies
-
- firedac
- connection
-
(and 1 more)
Tagged with:
-
A native VCL, and not Windows-based, TComboBox control.
Lars Fosdal replied to shineworld's topic in VCL
That's possible, @JonRobertson, but adding context to code is probably smart. Anyways, @shineworld should do a proper write-up and perhaps include a demo app with a comparison that shows the benefits of doing it his way, and post it on github and the QualityPortal when it comes back online. -
A native VCL, and not Windows-based, TComboBox control.
Lars Fosdal replied to shineworld's topic in VCL
Not sure why this was attached to a different thread, so I split it off, @shineworld -
What new features would you like to see in Delphi 13?
Lars Fosdal replied to PeterPanettone's topic in Delphi IDE and APIs
Not per se. However, the problem is that once you use the DPI aware IDE, the measurements and coordinates in forms are according to your current Windows DPI and scaling settings. Which means that when someone with a different DPI or scaling opens the form, it looks like shit and the changes that someone makes, will again be impacted by their settings. So if two people with two different settings, takes turn in changing a form, you can get a form that keeps on growing or shrinking during the design. Personally, I would prefer that such a thing doesn't happen - so that I can benefit from HighDPI also in the IDE. It is not a trivial problem to solve. Pixel perfection becomes very hard once you have to deal with design time as well as runtime scaling. -
What new features would you like to see in Delphi 13?
Lars Fosdal replied to PeterPanettone's topic in Delphi IDE and APIs
It is about privacy. It is the lack of proper privacy that causes private code to leak into generated AI code. -
What new features would you like to see in Delphi 13?
Lars Fosdal replied to PeterPanettone's topic in Delphi IDE and APIs
Nope. interface type TClass = class function Something<T>: string; // OK end; function Something<T>: string; // NOT OK implementation -
What new features would you like to see in Delphi 13?
Lars Fosdal replied to PeterPanettone's topic in Delphi IDE and APIs
1. Debuggers, debuggers, debuggers - multithread handling is abysmal today 2. Make HighDPI actually works as intended - it is useless in a team as is - unless everyone runs the same scaling 3. Generics constraints for enumerated types to enable the use of conversion to/from ordinal values, use set operators, etc. 4. Native ARM64 compiler for Delphi for Windows (and Linux/Raspberry PI, but Windows has prio) 5. A 64-bit IDE that ensured that EMBT was dogfooding 64-bit VCL and RTL and raise the quality As for AI, I wouldn't mind an AI that could look at code and suggest improvements - perhaps as a part of the static code analysis, or one that could explain "what does this code do". I don't really need or want an AI to generate code. If it is a standard, a lib should already exist. If it doesn't and there is no standard that covers the need, I'd be happy to have an AI outline alternative approaches - but given that the wide scope of parameters that goes into a design, I think it is unrealistic to expect that it would come up with the ideal suggestion without us writing a huge requirement. The output of VLLM generators is extremely dependant on precise and accurate specification statements, and writing those are almost as hard as writing good code. As for AI and privacy - keep your secret credentials separated from your code. Other than that, I don't think that many of us write code that truly needs to be hidden for secrecy reasons, although it is obvious that it will be necessary to ensure that privacy permeates the use of AI. -
@David P This is an issue that AFAIK is mishandled differently in different Delphi versions. It would be helpful if you specified your Delphi version in your profile. As for the issue itself - I still work in DPI Unaware mode 😕
-
Strange issues using multiline strings (was "Is it just me?? ")
Lars Fosdal replied to Ian Branch's topic in Delphi IDE and APIs
You beat me to it, Roger! I agree. @Ian Branch Please make topic titles reasonably descriptive of the contents F.x. Is it just me?? -> D12 Formatting issues Ummmm. What!! -> D12 Form event disappared! -
Please note: Only the 12.0 Athens GetIt server has been restored at this point in time (Feb. 7th). https://blogs.embarcadero.com/getit-update-additional-rad-studio-12-getit-packages-are-now-available/ https://blogs.embarcadero.com/rad-studio-12-athens-patch-1-available/ List of QP issues addressed in the patch: RSP-44063 Bug in MOD operation for Win64 Release configuration RSP-43656 [REGRESSION] Wrong codegen when passing empty open array to operator overload RSP-43568 Issue with TURI.Query Changed adding an equal sign to the URL ends with ?WSDL RSP-43551 When MDI form & Custom Styles are used together, the Process cannot be terminated. RSP-43547 New VisualManager feature causes crash in TCustomForm.WndProc() with Action=caFree RSP-43515 No event OnCameraDidFinishTaking for TTakePhotoFromCameraAction RSP-43494 Event OnValidate fails when the DBGrid is full - AGAIN! RSP-43463 JSON serialization error with scientific double notation RSP-43459 TEdit.FilterChar crash app on Android RSP-43422 NetHttpClient parsing URL parameters is incorrect RSP-43418 Wrong Delphi code optimization for integer div/mod RSP-43407 The Delphi compiler in RAD Studio 12 is no longer able to resolve standard types by their aliases when generates HPP files for a BPL package with components if the referenced types are declared in other units RSP-43383 Delphi 12 Android TEdit error RSP-43362 [iOS] TListView set search visible to True, the system will crash when clicking into the search area. RSP-43326 Blob reading is broken for 64-bit platforms in dbExpress RSP-43318 Incorrect ShortCut in TActionList RSP-43311 TSQLTimeStampOffset problems with Firebird 4 RSP-43299 TFlowLayout exception when all its elements are set to invisible RSP-43274 Arithmetic operations on record fields return incorrect results in certain cases if the "Optimization" compiler option is enabled RSP-43235 Structure view and Search for a method box no longer populated RSP-43007 Internal compiler error F2084 RSP-42860 FMX TListBox List Index Out OF Bounds RSP-42692 Ctrl-j - invoke template don’t work RSP-42682 TreeView crash RSP-42657 TTreeview crashes when scrolling in iOS RSP-42634 QBE component causes fatal IDE crash when removed from form RSP-42616 FMX: Key Handling different behavior in Delphi 12 RSP-42601 TURI with encoded Params are mangled when initialized
-
They might be in the process of moving the download servers, as they have been doing for numerous other services lately.
-
The GetIt server is back online - With the 12.0 Patch 1
Lars Fosdal replied to Lars Fosdal's topic in General Help
-
https://blogs.embarcadero.com/getit-update-rad-studio-12-getit-online-installation-is-now-available/ The new installer includes the Patch 1 fixes. If you installed using the old online installer, you are unable to add platforms. If you need additional platforms, you will need to uninstall and reinstall using the new online installer (if you don't need additional platforms, you don't need to reinstall). Patch 1 is available through GetIt, and is also available as a standalone installer from my.embarcadero.com for registered users.
-
The GetIt server is back online - With the 12.0 Patch 1
Lars Fosdal replied to Lars Fosdal's topic in General Help
@Roger Cigol - That is multiple paths ... has the Path been corrupted somehow? In a fight club context, I am not happy about that first path name. -
FYI - Several Embarcadero services are currently unavailable
Lars Fosdal replied to Keesver's topic in General Help
Retiring this thread now. Please use one the following: -
FYI - Several Embarcadero services are currently unavailable
Lars Fosdal replied to Keesver's topic in General Help
Well, everything that RADStudio 12.0 can contain, I suppose. -
FYI - Several Embarcadero services are currently unavailable
Lars Fosdal replied to Keesver's topic in General Help
That is a rather important point that I totally missed! -
The GetIt server is back online - With the 12.0 Patch 1
Lars Fosdal replied to Lars Fosdal's topic in General Help
Is this during the activation of the installation in the installation process? Was there a specific error? Anything in the install log that gives a clue to the nature of the error? http://license.embarcadero.com works - so the server is online... -
The GetIt server is back online - With the 12.0 Patch 1
Lars Fosdal replied to Lars Fosdal's topic in General Help
For activation of an installation? -
The GetIt server is back online - With the 12.0 Patch 1
Lars Fosdal replied to Lars Fosdal's topic in General Help
Still no news on the new Quality portal. -
Surprising behavior of .ToUpper
Lars Fosdal replied to Hans♫'s topic in RTL and Delphi Object Pascal
OP specified hardcoded English text, so ToUpperInvariant or an English locale for ToUpper should do the trick.