

DelphiUdIT
Members-
Content Count
734 -
Joined
-
Last visited
-
Days Won
17
Everything posted by DelphiUdIT
-
Uhmm, may be I'll probably say bullshit, but you can import assemblies from .NET only if they are flagged as COM compatible (they must be compiled in this way from Visual Studio). Others way are to use some instruments like CrossTalk or also JCL (from Jedi project). But I don't think that you will able to import like a component, only to call them like a DLL. You can also use some open source software like " ILSpy, the open-source .NET assembly browser and decompiler" to analize the .NET DLL. OF COURSE YOU MUST HAVE THE RIGHTS TO DO SO !!!
-
Seeking Collaboration: Creating a Delphi Component for STM32 Boards
DelphiUdIT replied to techdesk's topic in General Help
There are already know components on the fly without to work for new ones. For communications, one of the standard that works on serial COM, TCP and UDP is ModBus. With that you can communicate whatever you want, ghost I/O, virtual I/O, GPIO and others. Surely there is a ModBus implementation for STM32 (this one for example: https://github.com/nimaltd/master-modbus ). But, if you choose a STM32 with BLE, also BLE stack should be and you can create GATT service (so no physical connection for communication). You miss to read my full post: the communication is simple, the construction of full environment is more complex. EDIT: of course, for Delphi side there are also ModBus implementations (I think I posted here about this). -
Seeking Collaboration: Creating a Delphi Component for STM32 Boards
DelphiUdIT replied to techdesk's topic in General Help
Communicate with STM32 device is one thing, program a STM32 device is TOTALLY another thing. To program a STM32 (in IDE way) is like to construct a "Delphi Builder" for c language (I mean like Dev C++ that is made with Delphi) mixed with typical automation / building functions and so on. Instead, to communicate with STM32 is simple. There are many options. But I (we ?) don't understand what is your objective ? I think you desire a environment like some "Automation Builder" and with that you want to program a STM32 device, but this is like construct an new IDE and not a simple communication. Other solution is to have a "base" core support with API in STM32 and you construct you application around those API. -
A native VCL, and not Windows-based, TComboBox control.
DelphiUdIT replied to shineworld's topic in VCL
Seems that you populate your controls for an automation / building application. It' necessary to view the values with a combobox ? You can use a label (or other simple control) for every field and when a user click in one of them you can propose a combobox to change the present value or numeric keyboard or others custom control. -
I don't know if XE5 is the useful tool for producing WEB apps. But it was released over 10 years ago, I think that since it involves updating software perhaps you should upgrade to the latest version (or at least to a more recent version). now in addition to the TRIAL version which allows you to carry out a time-limited trial of the Architect version of Rad Studio, there is also the Community Edition version which is free within certain limits: link for the license and conditions of use: https://www.embarcadero.com/products/delphi/starter In this link you can see the features of the individual commercial editions: https://www.embarcadero.com/docs/rad-studio-feature-matrix.pdf I don't think you can use the XE5 if you have bought XE3. You must discharge it but probably the license will not be activated during installation. P.S.: take care that Embarcadero is updating all they server and services, so is possible that the community edition is not installable at this moment.
-
RFC 5322 was updated to RFC 6854 in 2013. In the Indy sources the last comment is on the RFC 2822 regulation (obsolete and replaced by RFC 5322). However, it is known that the comments have not been updated, nor have the existing manuals and docs been updated. The only one who could answer you is @Remy Lebeau This is also a discussion about this argument: https://stackoverflow.com/questions/25576292/indy-smtp-server-how-to-detect-cc-bcc-recipients
-
Monitor Windows application and restart if needed
DelphiUdIT replied to bdw_nz20's topic in Windows API
Inside the program I have a thread that runs independently and keeps the timing of a cyclical event controlled, let's call it the end of the processing sequence (normally a processing cycle lasts around 150 ms.). In all my programs, I generally work on events, the application must react to a given event (reading data from a PLC, receiving an image from a camera, etc ...) and if this does not start the thread goes to monitor the device (or devices) from which input is expected to verify that it is online (if there is no "keep alive" possible). Then every certain time I launch a simulated event to verify that the processing chain is up and running. All devices that have the capability (even devices intended as software, for example third-party applications), MUST launch a "keep alive" towards the application (and also the opposite) to confirm the online operating status: the KEEP ALIVE can happen via TCP or UDP, via physical inputs or various other mechanisms (for example with some third party applications there are COM Object events). In addition to all this, the thread also checks the memory used by the program to verify that it does not exceed certain limits (when a program runs for months without being turned off even a single byte of leak "every now and then" becomes a problem), and the temperature of the CPU package. When possible, following a persistence of high temperature (> 92 degrees) slows down the entire process to check for anomalies in the thermal dispersion of the PC. The application is launched from a ".CMD" batch file which checks the return value of the application and if it is different from $127 (for example) it relaunches it again. The monitoring thread or any other unhandled exception generates an EXITPROCESS($0) or sets the EXITCODE to $0 (depending on how severe the detected anomaly is). The normal exit of the program instead generates an EXITCODE at $127. The same monitoring thread sends an email and writes a log to report the anomaly. -
Error : constant expression violates subrange bounds
DelphiUdIT replied to Connie McBride's topic in RTL and Delphi Object Pascal
HOW TO DO IT ? Insert this in the code: {$WARN BOUNDS_ERROR ERROR} Refer to: https://docwiki.embarcadero.com/RADStudio/Athens/en/Warning_messages_(Delphi) P.S.: by now this will be a standard directive in all my code -
Error : constant expression violates subrange bounds
DelphiUdIT replied to Connie McBride's topic in RTL and Delphi Object Pascal
LOOOL, every time is an improvement ... -
Error : constant expression violates subrange bounds
DelphiUdIT replied to Connie McBride's topic in RTL and Delphi Object Pascal
-
Error : constant expression violates subrange bounds
DelphiUdIT replied to Connie McBride's topic in RTL and Delphi Object Pascal
Uhmm, I think there are good... actually very good reasons why "errors" are generated (AND SHOULD BE) in "Integer and Unsigned Integer" cases and the like. The first and most trivial case is the comparison operation. Comparing (or assigning) integers and unsigned integers is a huge mistake (i.e. it happens in the example from which the topic was generated). I think this is enough to define that there cannot be operations with "automatic" type conversion in these cases. Forcing the operation (therefore through typecasting) is the path that should be followed: the programmer knows what he is doing and solves the problem by forcing the operation. Already the definition of "-1" could create some "stomach ache" (it is an Italian way of saying that it creates "discomfort"). Those who programmed in assembler certainly remember the old Intel CWD-type instructions... A runtime, in Delphi 12 an Error was generated at the second instruction (like you told, "more dangerous") only in Debug mode ('Range check error'), but during compilation many warnings are generated regarding its use. Maybe the Warnings are not enough, they should be switched to error... HandleInteger(B); It is for this reason that it should not be allowed to carry out automatic conversions, already at the compiler level. I use and love Delphi, among other things, because when you write code and compile it you have a good certainty (I said "good" not "sure") that the code will run error-free, at least for basic errors. -
Error : constant expression violates subrange bounds
DelphiUdIT replied to Connie McBride's topic in RTL and Delphi Object Pascal
May be this is the cause: -
Error : constant expression violates subrange bounds
DelphiUdIT replied to Connie McBride's topic in RTL and Delphi Object Pascal
-
Error : constant expression violates subrange bounds
DelphiUdIT replied to Connie McBride's topic in RTL and Delphi Object Pascal
Mat be you are using it with UINT32 parameter or something like that ? -
May be there is a little trick to discover something: - open a "dproj" file and search for a "<DCC_UsePackage>" section, inside that should be "Intraweb_xx_D10_3" for example, this means that its developed with Delphi 10.3. Look that and you'll find a version ... - from Delphi XE7 you'll find "emsclientfiredac", inside the same section, if the version used is a Enterprise (or Architect) Version. These informations are not official and not sure, but may be a starting point.
-
SSL Cert gültig bis 2051: Indy10 (D7) TIdX509.notAfter = EConvertError
DelphiUdIT replied to querter's topic in Indy
Sorry, but I don't understand ... you have found the issue (in the UTC_Time_Decode function) and change the code to read 4 digit (that you select based on the length of 12 or 14 characters). So how can we help you ? -
The GetIt server is back online - With the 12.0 Patch 1
DelphiUdIT replied to Lars Fosdal's topic in General Help
Pay attention to the antivirus, it may block the ZIP because it thinks it has been compromised. -
This has happened to me in the past when in the source files (even those called in the Uses) there were strange characters or the line ending was not CRLF. I also saw some anomalies when the declared class name and the implemented one (in the methods) differed due to the character case. But I never delved into how much it all impacted the code. Since that time I have made sure of both CRLF characters, especially from what is copied / pasted from sources external to the IDE by first copying into a text editor and forcing the thing and then into the IDE.
-
GetIt installation does not work
DelphiUdIT replied to PeterPanettone's topic in Delphi IDE and APIs
To me all is working right, and the image that you send is the same for me. I don't know if patch 1 is needed to use the "new" getit (I use it with patch 1 installed and all works fine). -
Delphi 12 Update 1 is not displayed in the IDE About dialog
DelphiUdIT replied to PeterPanettone's topic in Delphi IDE and APIs
If you install the patch manually nothing will be displayed, if you install with GetIt you'll get the patch description in the About box. Bye -
RAD Studio 12 Path 1 1.0 class not registered
DelphiUdIT replied to marchomal's topic in Delphi IDE and APIs
It's a GetIt Helper But i don't know how to help you. If someone of the forum have some sight, otherwise you should reinstall Delphi 12 -
The GetIt server is back online - With the 12.0 Patch 1
DelphiUdIT replied to Lars Fosdal's topic in General Help
Why you have to reinstall Delphi12 ? Reinstall it means that you first must uninstall ALL (and delete directories and registry key) and after you can reinstall it. Waiting for new Web Installer, you can install only from ISO again and after that apply patch 1. -
The GetIt server is back online - With the 12.0 Patch 1
DelphiUdIT replied to Lars Fosdal's topic in General Help
ISO installer, except for registration time, install all without access Internet, and should works. So should not make any difference between now and November (before outage and getit not working) The original ISO release MUST be downloaded from My.Embarcadero.com page. -
You can share the form and the code a design time between the applications. But at runtime they are all isolated. You can exchange data between them via the methods mentioned in the previous posts, but also with a database where every application put their results ... you are able to process all these informations like you want. Bye
-
Opening form takes 1 minute in debugger, 2.5 s without
DelphiUdIT replied to PiedSoftware's topic in Delphi IDE and APIs
If components such as DBEdit, DBGrid or similar (dataware components) are present in the Form and these are active at RunTime, it may be that the delay is linked to the connection timeout with the DB engine.