mvanrijnen
Members-
Content Count
455 -
Joined
-
Last visited
-
Days Won
1
Everything posted by mvanrijnen
-
Delphi REST frameworks that run on Linux?
mvanrijnen replied to David Schwartz's topic in Network, Cloud and Web
MARS is also (according to: MARS-Curiosity REST Library - Delphi-PRAXiS [en] (delphipraxis.net)) compatible with linux, it seems to work on all Delphi targets so. -
Delphi REST frameworks that run on Linux?
mvanrijnen replied to David Schwartz's topic in Network, Cloud and Web
Things like: * RadServer * MARS -
Where does Delphi store the list of command line parameters?
mvanrijnen replied to PiedSoftware's topic in Delphi IDE and APIs
Yes would be nice if they changed this to store it at project level. Would like to see this for the debug watches also. -
Requested for IDE to support more RAM (vote/discuss if you care)
mvanrijnen replied to Tommi Prami's topic in Delphi IDE and APIs
Yes on the last dutch Delphi event from EMB (via Bransten) this was said to. Also they said that EMB is busy with an update so existing MDI apps will still run & function correctly. (i think they gonna implement the parts which MS dropped). see also": -
besides the threadsafety and the question if this is the best solution, probably your memo is getting "full", try to limit the total lines in the memo to for example max. 1000lines, and do the update between beginupdtae and endupdate. With which intensivity the clients send data )(e,.g. 100 times per second)? function TFServer.cliInfoMessage(info: TMemo; send, msg: string): Boolean; begin TThread.Queue(nil, procedure begin info.lines.BeginUpdate(); try info.Lines.Append('/' + send + '/' + msg); while info.lines.count>1000 do info.lines.delete(0); finally info.lines.EndUpdate(); end; end); result := true; end;
-
I'm reasonably sure that you can accomplish this with Indy. You have multiple clients sending data to a single indy server i assume? Maybe you have some memory problems, not correct handling incoming connections and or data?
-
RAD Server package running under dev but not in IIS
mvanrijnen replied to nufus42's topic in Network, Cloud and Web
Would be a possibility for the parts that don't touch/need our BL indeed. -
RAD Server package running under dev but not in IIS
mvanrijnen replied to nufus42's topic in Network, Cloud and Web
Still running production with the DEV Console, we are (for sure 90%) moving away from RadServer, It gives us no pro's/extra's only problems and con's. We're looking at something like MARS to develop our (micro)services. -
@programmerdelphi2k I believe the findclose needs to be executed when the findfirst succeeds, otherwise not.
-
and if you stay with the findfirst/findnext solution, do not forget the findclose 🙂
-
TStringDynArray, i believe its defined in the unit "System.Types". you call this function for example with: FindFilesWithPatttern('C:\MyFolder', '*.sys'); // get all the .sys files FindFilesWithPatttern('C:\MyFolder', 'myfile.txt'); // get the myfile.txt file(s) (maybe for your example u should use an overload of the TDIrectory.GetFiles method which also recurs over the (sub)folders. the line: files := TDirectory.GetFiles(directoryPath, filePattern); you change in: files := TDirectory.GetFiles(directoryPath, filePattern, TSearchOption.soAllDirectories); for that. As said before by someone else, a filemask can also be a full filename.
-
The "ChatGPT" solution: Question: uses System.SysUtils, System.IOUtils; procedure FindFilesWithPattern(const directoryPath, filePattern: string); var files: TStringDynArray; fileName: string; begin try files := TDirectory.GetFiles(directoryPath, filePattern); for fileName in files do Writeln(fileName); except on E: Exception do Writeln('An error occurred: ' + E.Message); end; end; Explanation from ChatGPT:
-
Why not use (in unit System.IOUtils), TDirectory.GetFiles(), see: System.IOUtils.TDirectory.GetFiles - RAD Studio API Documentation (embarcadero.com) (i think it's better to use those functions because you do not know how to use findfirst/next etc correctly)
-
Why not use (in unit System.IOUtils), TDirectory.GetFiles(), see: System.IOUtils.TDirectory.GetFiles - RAD Studio API Documentation (embarcadero.com)
-
Just a quick question is the 16Mb limit still valid for the tool? i keep getting: "Cannot locate debugging information for file `D:\Data\company\Delphi\Projects\SVN\appname4\Clients\appname\Win32\Debug\appname.exe'. Cannot match the module with the symbol file `D:\Data\company\Delphi\Projects\SVN\appname4\Clients\appname\Win32\Debug\appname.pdb'. Make sure to specify the correct path to the symbol file in the Binary/Symbol Search list of directories." While the .pdb is there. (i replaced the msdia dll) works, replaced the wrong msdia.dll 🙂
-
Bitdefender going crazy about with MARS compiles program
mvanrijnen posted a topic in MARS-Curiosity REST Library
Just trying to put the first tests for using MARS to our testserver, getting this from the BitDefender there: "Malware: DeepScan:Generic.EmotetK.D02D57D4 File Path: C:\Program Files (x86)\Company\myservicename.exe" We the only one with this problem? anyone a solution? (except white listing all the coming executables) -
Bitdefender going crazy about with MARS compiles program
mvanrijnen replied to mvanrijnen's topic in MARS-Curiosity REST Library
The result of the "console" version of that file (original is a service): VirusTotal - File - 7f7461788afdcbf62851b388ae8078fb96f1536897891beaa424b83acb4c0a37 so somehow it seems like a combination of using MARS in a service, combined with some of our own stuff 🙂 Here is the MARS Helloworld example, result: https://www.virustotal.com/gui/file/81b5df036d3e194d2275bafc50a40830d585f4fa86d05e185bb2d4277796ec5f?nocache=1 end as last, a simple helloworld (writeln), console result: VirusTotal - File - a0011e091fca526d855541185805f8a28c2cb5543b42c32241edd091b4fc1dfe -
Bitdefender going crazy about with MARS compiles program
mvanrijnen replied to mvanrijnen's topic in MARS-Curiosity REST Library
Yes, its a false positive, we have like few hundred delphi compiled executables, here's the virustotal link: VirusTotal - File - 871ae239973e56fe9e62ee15bff3cdaec454871c0948db71c1241bca9315477d But ok, it's not a common thing for programs including MARS. thats what i wanted to know. -
we use agent ransack for searching things like this, found on: Agent Ransack – Mythicsoft then search on all *.pas, *.dfm, *.fmx files. But if you smart then you use a TDatamodule, where you put yout connection in/on, and in other units you point to that connection, (maybe nog the connection itself), but ask the datamodule for a new connection instance etc.
-
So, a topic which returns now and then 🙂 Printing existing PDF Files. There are some options using cmdline tools/applications, adobe activex etc etc, But with al those options i have not enought control over how to print an existing pdf. like: * Which printer * Which bin of that printer etc. etc. Anybody a tip for a final solution? I prefer something which is 100% incorperated in the software itself (delphi vcl application).
-
ah ok, gonna take a look again, thanks for the tip
-
No i already have a PDF (generated with ReportBuilder), printing to PDF we already can. Now i have to print a already generated .pdf (at a later stage). gonna take a look into the sumatra pdf. I see it has a lot of printing options etc.
-
Would be nice if it (could) work the same as in VisualStudio, when i use a class/record type, it would give a hint in which units this would be.
-
Delphi - send mail from Office 365 with EWS protocol
mvanrijnen replied to J23's topic in ICS - Internet Component Suite
i believe EWS is deprecated, take a look at the MS Graph API: Microsoft Graph overview - Microsoft Graph | Microsoft Learn -
Delete all failed jobs from the printer spooler
mvanrijnen replied to msd's topic in Delphi IDE and APIs
🙂 Print Spooler API Functions - Win32 apps | Microsoft Learn