-
Content Count
1167 -
Joined
-
Last visited
-
Days Won
16
Everything posted by FPiette
-
Display of bmp and jpeg images is poorer quality in Windows 11
FPiette replied to Martin Liddle's topic in General Help
Is one or both of the computers have screen scaling other than 100%? What is the original size of the image and what is the size of the rectangle where you display it? -
Is there a component can help me automate web actions ?
FPiette replied to William23668's topic in VCL
You can embed TEdgeBrowser in your application and interact with it to automate web actions. You interact mostly by injecting JavaScript once a page is load. -
OAuth Authentication Embedded or Standard Browser?
FPiette replied to Angus Robertson's topic in ICS - Internet Component Suite
That has not changed. But as always, one must pay attention to initialization and finalization units as well as global variables. All 3 will bring code in. -
How to connect to wss:// server ?
FPiette replied to wright's topic in ICS - Internet Component Suite
According to the sources, WSS works like HTTPS. This means you'd better inherit from THttpCli and override a few things (For example URL parsing to allow wss:// prefix). But before doing that, start by understanding how THttpCli works using OverbyteIcsHttpsTst sample program. Verify it works for you to access a standard HTTPS server so that you are sure you correctly deployed OpenSSL which is used by ICS for all "secure" version of protocols. WSS require a few specific HTTP header and THttpCli has provision for that. Probably the only modification is make THttpCli accept wss:// prefix instead of https://. Also you should use WireShark to see all network communication. And a working WSS client (No need to have source) that you'll use preferably with your target website. Using WireShark, you can see the exact exchange between the client and server. You use that to compare with what you wrote with Delphi and understand where is your errors. -
And which are the issue you have? Compilation errors? Compile but doesn't run?
-
How to connect to wss:// server ?
FPiette replied to wright's topic in ICS - Internet Component Suite
Glad it works. I have no idea which protocol wss:// use. Maybe you should read the documentation related to wss? -
How to connect to wss:// server ?
FPiette replied to wright's topic in ICS - Internet Component Suite
If connection cannot be established, you get an error message, possibly after a long timeout. You probably have to enable SSL/TLS in your ICS application. At least if using port 443. -
How to connect to wss:// server ?
FPiette replied to wright's topic in ICS - Internet Component Suite
You can check a host name resolution to IP address using Windows command line nslookup. I did: ws.twelvedata.com is has 4 IP addresses. But ws.xn--twelvedata-lb99c.com is not a valid hostname. That's your problem and NOT an ICS issue! First thing first : check the hostname you use... -
How to connect to wss:// server ?
FPiette replied to wright's topic in ICS - Internet Component Suite
You must pass the hostname in the TWSocket.Addr property, not a whole URL. The hostname in your case is ws.twelvedata.com. -
You should really show a mockup of what GUI you want because all suggestions done could do what I understood you want. And in my opinion you have enough in Delphi to achieve your goal without to much work.
-
Look at CategoryPanelGroup and CategoryButtons.
-
As far as I know, Dspack is not maintained anymore. But DirectX and DirectShow are supported by Delphi "natively". Look at Delphi RTL source code winapi.D2D2.pas, Winapi.D3D10 and other similarly named files.
-
Windows VCL application pauses when window is not focused...
FPiette replied to DavidJr.'s topic in VCL
You probably already know that: 1) you cannot access the GUI from a worker thread. 2) Where the code is has nothing to do with the run context. If a thread call a method of the main form, that method is running in the thread context. And if main form code call a thread method (also thru a getter/setter), the it runs in the context of the main thread. 3) All data access from different contexts (main thread / worker thread) MUST be synchronized using critical section or other similar mechanism. 4) If a thread use Synchronize, then the synchronized method is run by the main thread effectively defeating multi-threading. -
Attach to Process along with Stepping through Code
FPiette replied to PeaShooter_OMO's topic in General Help
I asked because you mentioned you generate remote debug symbols. -
Attach to Process along with Stepping through Code
FPiette replied to PeaShooter_OMO's topic in General Help
You should not. Manage to generate the executable where it must be or run it from the folder where you generate it. Maybe you are using the remote debugger? -
Attach to Process along with Stepping through Code
FPiette replied to PeaShooter_OMO's topic in General Help
Have you moved the exe file from where you produced it? -
OnHeaderData should probably work for you. From the handler, access the LastResponse property to get the line.
-
Do as @aehimself said: capture the command line you generate with your program and execute it manually by copy/paste in the cmd window. Then check that what seems to be the output of GetDosOutput is writeable. To check, write code in your program.
-
This is a very poor diagnostic which can't be used to help you.
-
You didn't mentioned in which source code file this happens. Is it yours or in FastMM source code? The last line you show in the call stack tells that the exception occur in one of the finalization section in one of the unit. The first argument passed to FillChar probably point to an invalid memory location (Random or already freed) or the length passed in the second argument overflow the length of the memory block pointed by the first argument. If the line is located in FastMM, it is probably a line that is used by FastMM to detect buffer overflow or underflow. For madExcept, be sure to check "Report resource leaks" and "instantly crash on buffer ... overrun" if "overrun" doesn't give any error, try with "underrun".
-
Assign an App procedure to a Component Event??
FPiette replied to Ian Branch's topic in General Help
You should tell us what is the EXACT error message the compiler give. JobTickets.AfterInsert(DataSet: TDataSet) := JobTicketsAfterInsert(DataSet: TDataSet); It is wrong. Probably it should be : JobTickets.AfterInsert := JobTicketsAfterInsert; A "Unit procedure" is not a proper terminology. It is either a simple procedure or a method of object. The later is required. You should show the declaration of JobTicketsAfterInsert. That's probably where the error is. -
You said it runs under debug. If so, the IDE should show you the exact line of error if it happen in your code. It also show the call stack. The symtoms you describe makes me thing you have an uninitialized pointer or initialized object reference or use of an initialized local variable. Using a tool such as madExcept could help you find the issue.
-
Installation of fresh Delphi 11.2 fails: Exception in module rtl280.bpl
FPiette replied to Hans♫'s topic in General Help
Your screen shot is useless. The application error dialog hide most of the installer window. I suspect your system is somewhat corrupted. I suggest the following: 1) Scan your computer with a good antivirus 2) Apply all available Windows updates. Restart your computer. 3) Use Microsoft System File Checker to repair missing or corrupted system files. 4) Manually delete all files and folders, including hidden one, related to Delphi and Embarcadero except Delphi 10.4 (If you want to keep that version) 5) Also delete all registry keys related to Delphi and Embarcadero except Delphi 10.4 (If you want to keep that version) 6) Be sure to disable ransomware protection in Windows Security before installing Delphi. Don't forget to enable it after installation. 6) Try once more to install Delphi. If this doesn't work, contact Embarcadero support. -
Installation of fresh Delphi 11.2 fails: Exception in module rtl280.bpl
FPiette replied to Hans♫'s topic in General Help
Of course you can! Windows is always available and can't be deselected. Installing only for Windows means not selecting other platform (iOS, Android, MAC, Linux).