Welcome, Guest
You have to register before you can post on our site.

Username
  

Password
  





Search Forums

(Advanced Search)

Forum Statistics
» Members: 7,375
» Latest member: stainlesssteel
» Forum threads: 2,188
» Forum posts: 10,574

Full Statistics

Online Users
There are currently 217 online users.
» 3 Member(s) | 209 Guest(s)
Applebot, Bing, Facebook, Google, Yandex, businessconsultingagency, cryptoads12, stainlesssteel

Latest Threads
WebApplication.Form Size ...
Forum: IntraWeb General Discussion
Last Post: pvh855
06-11-2024, 02:01 PM
» Replies: 0
» Views: 83
Page refresh
Forum: IntraWeb General Discussion
Last Post: rburton
06-11-2024, 09:57 AM
» Replies: 3
» Views: 464
Page position
Forum: IntraWeb General Discussion
Last Post: rburton
06-11-2024, 09:20 AM
» Replies: 0
» Views: 96
TIWDBEdit with DataType =...
Forum: IntraWeb General Discussion
Last Post: RenSword
06-11-2024, 08:34 AM
» Replies: 4
» Views: 385
Form with required fields
Forum: IntraWeb General Discussion
Last Post: Alexandre Machado
06-11-2024, 07:52 AM
» Replies: 3
» Views: 424
Something that went unnot...
Forum: IntraWeb General Discussion
Last Post: ebob42
06-10-2024, 10:19 AM
» Replies: 1
» Views: 1,043
Relative path to wwwroot ...
Forum: IntraWeb General Discussion
Last Post: joergb
06-09-2024, 02:30 PM
» Replies: 1
» Views: 225
AddStartHandler - how to ...
Forum: IntraWeb General Discussion
Last Post: medzoom
06-08-2024, 07:30 AM
» Replies: 0
» Views: 167
iwSelect and ItemsHaveVal...
Forum: IntraWeb General Discussion
Last Post: joelcc
06-07-2024, 03:38 PM
» Replies: 0
» Views: 159
IntraWeb 15.6.2 is out!
Forum: IntraWeb General Discussion
Last Post: MJS@mjs.us
06-07-2024, 01:02 PM
» Replies: 2
» Views: 424

 
  WebApplication.Form Size Props
Posted by: pvh855 - 06-11-2024, 02:01 PM - Forum: IntraWeb General Discussion - No Replies

Hello.
IW v15.2.69
SessionOptions.UniqueURL = True

On MainForm.OnCreate event, im reading WebApplication.FormWidth and WebApplication.FormHeight props.
if i start my app by /$/start - all is good, props are filled.
if i start my app by root '/' request  - app started, but props are empty (their values is -1)
Any advice how to fix that?
Thanks

Print this item

  Page position
Posted by: rburton - 06-11-2024, 09:20 AM - Forum: IntraWeb General Discussion - No Replies

I have a two form application, form 1 is a list with each item having a link, when I click the link it opens the second form to show a detail view.  This all works fine except if I scroll down the list on form 1 and open the detail view, on hiding the detail form to return to the list it refreshes the page and returns the list back to the top rather than leaving the list in the same position as i originally left it.
 
Does anyone know way around this.  Thank you

Richard

Print this item

  AddStartHandler - how to bypass to an IWForm without creating a Session
Posted by: medzoom - 06-08-2024, 07:30 AM - Forum: IntraWeb General Discussion - No Replies

I use the code from >Alexandre MAchado> Embrace the backbutton for my program with special Login-funtion, so everyone must take the login-credentials - even if he uses the back/Forwardbutton or just types in the hole URL.

But I want to make one IWForm accessable to everyone - so bypassed by the AddStartHandler?

Quote:The first one THandlers.AddStartHandler(), creates a new content handler for this form and sets it as the application’s Start handler, i.e. every new request that doesn’t have an associated session will be redirected to this handler. In practice, it means that every new request that creates a new session will be redirected to the MainForm, regardless of the URL. This feature is ideal to be used in applications that require a login, for instance.

How do I make an expecption to the function of "AddStartHandler"?
Code:
// this doesnt work???
  THandlers.Add('weather_info2', TContentForm.Create(TIWForm5));


Here is the code in the main-client-form.

Code:
initialization
  TIWForm1.SetAsMainForm;

  // SetURL creates a content handler for this form and set's the URL for it according to the parameters
  // In this case, I want the URL to be http://<domain>/MainForm:
  TIWForm1.SetURL('', 'MainForm');

  // I'm also creating 2 content handlers that I want to redirect to this same form:
  // The StartHandler (i.e. it will catch all requests that create a new session
  THandlers.AddStartHandler('', 'MainForm', TContentForm.Create(TIWForm1));

  // And the root handler which will catch requests to the root address of your app
  THandlers.AddRootHandler('', 'MainForm', TContentForm.Create(TIWForm1));

  // this doesnt work???
  THandlers.Add('weather_info2', TContentForm.Create(TIWForm5));

end.

Print this item

  iwSelect and ItemsHaveValues Error
Posted by: joelcc - 06-07-2024, 03:38 PM - Forum: IntraWeb General Discussion - No Replies

When I try and setup an iwSelect using soServerSide with ItemsHaveValues, when populating the list I get the following error 

"The results could not be loaded"

Can you please fix/enhance this?


This is with iw 15.4.0

Print this item

Question Indy IdHTTPWebBrokerBridge/TIdCustomHTTPServer threads keep on increasing
Posted by: chris.j - 06-06-2024, 07:24 PM - Forum: Indy General Discussion - No Replies

I have a customized IdHTTPWebBrokerBridge class which descends from TIdCustomHTTPServer and overrides the DoCommandGet method. Below is the basic code


Code:
procedure TIdHTTPWebBrokerBridge.DoCommandGet(AThread: TIdContext;
  ARequestInfo: TIdHTTPRequestInfo; AResponseInfo: TIdHTTPResponseInfo);
var
  LRequest: TIdHTTPAppRequest;
  LResponse: TIdHTTPAppResponse;
begin
  LRequest := TIdHTTPAppRequest.Create(AThread, ARequestInfo, AResponseInfo);
  try
    LResponse := TIdHTTPAppResponse.Create(AThread, LRequest, ARequestInfo, AResponseInfo);
    try
      // WebBroker will free it and we cannot change this behaviour
      AResponseInfo.FreeContentStream := False;

      try
        if TWebDispatcherAccess(FWebModule).DispatchAction(LRequest, LResponse) then
        begin
          if not LResponse.Sent then
          begin
            LResponse.SendResponse;
          end;
        end;
    finally FreeAndNil(LResponse); end;
  finally FreeAndNil(LRequest); end;
end;

I noticed that the thread count of the process keeps slowly increasing and even reached around above 1500 threads in a few days. It keeps on increasing until I am getting an "Access violation at address 00401ED5 in module 'xxx.exe'. Read of address 80030000"  error. I am not sure why it keeps increasing over time. What might cause the threads to stay and not get released? I did set KeepAlive to true to save on the SSL handshake costs.

I have tried logging all requests and responses and do not see any error that might cause this. I also did not find any long running processes that are stuck in an infinite loop. The thread count does not justify the activity going on. Even when there is no more activity, the thread count does not decrease. I'm already using the latest Indy v10.6.3.3 and OpenSSL v1.0.2u DLL files.

Print this item

  Simultaneous OnAsyncChange and OnAsyncClick on Touch Device
Posted by: RenSword - 06-06-2024, 10:06 AM - Forum: IntraWeb General Discussion - No Replies

I need to bind OnAsyncChange on TIWDBEdit to trigger to field change to calculate some field then reflect changes to user, and I use a TIWButton.OnAsyncClick to Post the DataSet changes.
To use the sample project attached. 
.zip   Sample.zip (Size: 8.04 KB / Downloads: 0)
1) Click Edit.
2) When in edit state, focus on the TIWDBEdit and try to change the code
3) Do not click other place so TIWDBEdit does not lose focus and trigger OnAsyncChange.
4) Click on Post button directly. (this will trigger TIWDBEdit.OnAsyncChange then TIWButton.OnAsyncClick)

I notice a different behavior between Mouse Click Device (Desktop) and Touch Device (Phone). When I use browser inspect tool, I can see the timing like this.

First Img: Mouse Click Device.png     
First callback is OnAsyncChange and second callback is OnAsyncClick, it can be seen that they are far away and do not overlap

Second Img: Touch Device.png     
It can be seen that OnAsyncChange overlapped with OnAsyncClick callback.
There are rare cases that will happen sometimes, like this image, OnAsyncClick finished faster than OnAsyncChange. This cause

Code:
procedure TIWForm1.btnPostAsyncClick(Sender: TObject; EventParams: TStringList);

to be runned first and EventParams does not contain EDCODE=NewValue, so its posted without change in value
based on IWBase.js, when typing on edCode, it is added to window.ChangedControls, but bcz SendPostRequest of OnAsyncChange cleared the window.ChangedControls, SendPostRequest of OnAsyncClick cannot see edCode as changed and cannot pass the changed value to server

=========================================================================

if u uncomment the Exception in field change, you can see when you redo the above step

For Mouse click device, due to its no overlapping behavior, when OnFieldChange raise the Exception, OnAsyncClick callback is not run at all (the value on the field is reverted and posting is not done, this is the more correct behavior)

For Touch device, when OnFieldChange raise the Exception, OnAsyncClick callback is still runned (the value on the field is reverted and posted directly).

==============================================================================

This is probably not a bug, but rather a issue due to touch and click difference, any idea to solve this?

Print this item

  TIWChartJS memory leak
Posted by: ioan - 06-05-2024, 05:11 PM - Forum: IntraWeb General Discussion - No Replies

In the ChartJS demo, I enabled the memory leak report (ReportMemoryLeaksOnShutdown := true) and when closing the application the following memory leak is reported:


Code:
---------------------------
Unexpected Memory Leak
---------------------------
An unexpected memory leak has occurred. The unexpected small block leaks are:
29 - 36 bytes: TIWBorderOptions x 3

EDIT:

It looks like in the unit IWCanvas, at line 259 TIWBorderOptions is created and never freed. If I add FBorderOptions.Free; in TIWCustomCanvas.Dispose, the leak disappears.

Print this item

  Relative path to wwwroot for C++ Builder
Posted by: valmeras - 06-05-2024, 03:24 PM - Forum: IntraWeb General Discussion - Replies (1)

I am using C++ Builder 10.2.3 with Intraweb 15.6.1

I am trying to access a subfolder (myfolder) I created in wwwroot following this reference article:

https://docs.atozed.com/docs.dll/develop...20XIV.html

This for sure does not work as a relative path in C++ builder: "\\myfolder\\myfile.xml"
It is referring to C:\myfoler\myfile.xml

This one is close: "myfolder\\myfile.xml". But is referring to the application path were the .exe is running!

So, in C++ Builder, how can I use a relative path to access a file or subfolder located in wwwroot?

Print this item

  Install different version of IW
Posted by: zsleo - 06-03-2024, 11:54 PM - Forum: IntraWeb General Discussion - Replies (2)

First let me say that I think CG Dev Tools is DEAD and their source code version, in it present form, requires the licencing DCUs to be compiled with nthe latest Delphi Version and I am unable (for six month) to get CG Dev Tools to respond.

So I want to convert some of my apps to IW/Bootstrap.

I have both Delphi 11.3 and Delphi 12.1 installed on my computer.

QUESTION:

How do I keep my IW 15.4.1 installed on my Delphi 11.3 - for CG Dev Tools maintenance 
AND
Install IW 15.6.2 installed on my Delphi 12.1 - for Bootstrap development 

TIA

Print this item

  IntraWeb 15.6.2 is out!
Posted by: Alexandre Machado - 06-02-2024, 01:14 AM - Forum: IntraWeb General Discussion - Replies (2)

Hi guys,

a new maintenance update has been released with a few important bug fixes:

https://www.atozed.com/2024/06/intraweb-15-6-2/

Enjoy!  Big Grin

Print this item