| Welcome, Guest |
You have to register before you can post on our site.
|
| Latest Threads |
Looking for UI Design Tip...
Forum: Delphi General Discussion
Last Post: chrisjordon232
08-06-2026, 05:17 AM
» Replies: 0
» Views: 30
|
Simply convert PeerIp to ...
Forum: Indy
Last Post: DidierMenant
08-04-2026, 03:50 PM
» Replies: 2
» Views: 179
|
New CGDevTools build is a...
Forum: CGDevTools
Last Post: lfeliz
08-04-2026, 12:03 AM
» Replies: 2
» Views: 1,350
|
How to terminate HTTP Thr...
Forum: Indy
Last Post: rlebeau
08-02-2026, 04:21 PM
» Replies: 3
» Views: 209
|
IW 16.2.0 Missing librari...
Forum: IntraWeb General Discussion
Last Post: JuergenS
07-31-2026, 09:44 AM
» Replies: 6
» Views: 1,245
|
Datatables question
Forum: IntraWeb General Discussion
Last Post: Alexandre Machado
07-28-2026, 04:34 AM
» Replies: 2
» Views: 233
|
CSS file not reloading af...
Forum: IntraWeb General Discussion
Last Post: CharlieDunn
07-27-2026, 08:27 PM
» Replies: 1
» Views: 379
|
Intraweb components missi...
Forum: IntraWeb General Discussion
Last Post: valmeras
07-27-2026, 03:18 PM
» Replies: 3
» Views: 378
|
Image question on tiwjqdb...
Forum: IntraWeb General Discussion
Last Post: alex.trejo@tttnet.com.mx
07-17-2026, 05:18 PM
» Replies: 6
» Views: 4,867
|
IW 16.1.9 Invalid propert...
Forum: IntraWeb General Discussion
Last Post: Blanca80
07-17-2026, 08:06 AM
» Replies: 7
» Views: 2,373
|
|
|
| Things to be aware in Delphi 12 (where EMB broke lots of code out there) |
|
Posted by: Alexandre Machado - 02-14-2024, 01:04 AM - Forum: IntraWeb General Discussion
- Replies (4)
|
 |
After some more time playing with Delphi 12 and supporting different applications
1) Indexes in lists are now NativeInt. It means that in 32 bits, nothing changes, but in 64 bits it becomes a Int64.
Whatever TList, TStringList, TObjectList, etc. descendants that you have in your code where you have new Get() and Put() methods for the list you will need to rewrite and (the worst part) probably declare a new alias for the NativeInt type if you need to code to keep compatibility with older Delphi versions.
Warning: The compiler doesn't give you clear messages for this case.
I have really no idea why Embarcadero decided to do that, really. I asked Marco Cantu on his blog but seems that he didn't like/approve my question. Funny. 
2) OnCreate/OnDestroy events of Forms are triggered from AfterContruction/BeforeDestruction methods, not from Create/Destroy as before. It means that code where you override the contructor of the form and then initializes data inside OnCreate may start failing. Check this example:
Code: type
TMyForm = class(TForm)
procedure FormCreate(Sender: TObject);
private
FMyList: TStringList;
public
constructor CreateEx(AOwner: TComponent; aSomeItem: string);
end;
implementation
constructor TMyForm.CreateEx(aOwner: TComponent; aSomeItem: string);
begin
inherited Create(aOwner);
FMyList.Add(aSomeItem);
end;
procedure Tv6LayerEditor.FormCreate(Sender: TObject);
begin
inherited;
FMyList := TStringList.Create;
end;
The code above works perfectly fine since Delphi 1 but now on Delphi 12 it fails with an AV inside the CreateEx() constructor. This happens because FMyList is created only inside Form's OnCreate event (FormCreate above) which will only happen after the AfterConstruction has been executed. Until Delphi 11, the event would fire when calling the inherited Create() constructor.
Although I believe that this is "correct", especially because exceptions inside OnCreate event wouldn't cause the constructor to fail, the fact that there is no way to keep the old behavior is problematic.
There is no simple way to detect this problem unless through code inspection. In a huge code base it can take a long time and it's very error prone.
This is another change that I see no reason for and don't know how it got approved...
|
|
|
| ScaleMM2 |
|
Posted by: Mikael Nilsson - 02-13-2024, 01:01 PM - Forum: IntraWeb General Discussion
- Replies (3)
|
 |
Hi,
I have read the article "Capacity of IntraWeb Applications and Memory Managers". It was very interesting.
So I decided to use ScaleMM2 instead of FastMM4.
But when I compiled my applicaction I got a compile error in unit smmFunctions in function BitScanLast(aValue: NativeInt): NativeUInt;
{$IFDEF CPU386}
BSR AX, aValue;
{$ELSE} .NOFRAME
BSR RAX, aValue;
{$ENDIF}
[dcc32 Error] smmFunctions.pas(337): E2107 Operand size mismatch on statement BSR AX, aValue;
|
|
|
| TIWTemplateProcessor - at runtime |
|
Posted by: lfeliz - 02-10-2024, 04:59 AM - Forum: IntraWeb General Discussion
- Replies (4)
|
 |
I have a situation where I would like to use TIWTemplateProcessor in a region, but be able to change the template applied based on a runtime condition (order type) set when user sets a value or in an onscroll event.
In the past, before I got wise to templates, I would stack the regions and just show the one I wanted, but with templates, I can just expose the controls needed based on the type of order
What is best way to force the region to repaint using the updated template?
Thanks
- Lou
|
|
|
| Using DB grids |
|
Posted by: iwuser - 02-10-2024, 01:40 AM - Forum: IntraWeb General Discussion
- Replies (7)
|
 |
Never tried any data with IW before, so if there are any secrets, please share.
Tried the demo with TIWjQDBGrid and it worked. But it's using a ClientDataset. Once I replaced that with a real DB connection, the grid just displays "Loading..." and nothing happens. Is it supposed to work?
So, how would you publish any data from the server to a grid?
Can it be editable in the grid, in place, as a VCL grid would do?
Or is this a totally different world and nothing is what it seems?
|
|
|
| Compiler error in IW15.5.6 and IWApplication.gSessions.LookUp |
|
Posted by: Fabrizio Conti - 02-07-2024, 11:25 AM - Forum: IntraWeb General Discussion
- No Replies
|
 |
Hi,
after upgrading IW from 15.3.12 to 15.5.56 I have a compiler error in a procedure that I use to list active sessions, developed looking at the SessionLookup151 demo project.
The error is "E2010 Incompatible types: 'TSessionProcEx' and 'Procedure' when compiling "IWApplication.GSessions.LookUp(..." and I can reproduce this error in the demo.
Is this a bug introduced in IW15.5.x or I have to change in some way the code?
Thanks for your help.
Fabrizio
|
|
|
|