Posts

Showing posts from July, 2017
Excited to be attending EKON 21 in Cologne, Germany.
Does anyone know of a report writer in FMX for mobile platforms? Last I heard, Fastreports could not be used on mobile.

I haven't leveraged ISAPI DLLs in a number of years but I am considering their use in an upcoming project.

I haven't leveraged ISAPI DLLs in a number of years but I am considering their use in an upcoming project. Has much changed in this arena as far as problems debugging/updating the DLLs? One thing is new - I can more easily create a stand alone application for help with debugging - but what about version updates, is there a pattern for that these days? I was debating on having a proxy DLL up front which decides which version to submit the request to.
I haven't leveraged ISAPI DLLs in a number of years but I am considering their use in an upcoming project. Has much changed in this arena as far as problems debugging/updating the DLLs? One thing is new - I can more easily create a stand alone application for help with debugging - but what about version updates, is there a pattern for that these days? I was debating on having a proxy DLL up front which decides which version to submit the request to.

Originally shared by TRichView

Image
Originally shared by TRichView In the new update of Report Workshop (Delphi #VCL components for building reports using our text editor engine), improvements are related to geometric shapes. Previously, they were used only in diagrams (changing color or count of shapes depending on values). Since this version, shapes are also available as a separate #Delphi VCL component and as an object for #TRichView documents. A command for shape insertion and a dialog window for changing shape properties are implemented. More shape types are added. This update also includes an improved syntax of {$IF} command in reports. You can see new features in this video: https://www.youtube.com/watch?v=E8G1vlOgOso Web site: http://www.trichview.com

I'm having a go at multi monitor high DPI support for my styled 64 bit VCL app, which is still not supported in 10.2. Using Scaled and ScaleBy I can come a long way, but what about main and popup menus, anyone an idea how to scale these? Looks like the main screen DPI setting is used, not the monitor where the menu is drawn. This makes for very miniature menus!

I'm having a go at multi monitor high DPI support for my styled 64 bit VCL app, which is still not supported in 10.2. Using Scaled and ScaleBy I can come a long way, but what about main and popup menus, anyone an idea how to scale these? Looks like the main screen DPI setting is used, not the monitor where the menu is drawn. This makes for very miniature menus! See also RSP-12580 (not mine but related). See also https://stackoverflow.com/questions/33020096/how-to-handle-menu-scaling-after-runtime-dpi-change-in-delphi-seattle (old, and not my preferred solution).

Hello guys

Hello guys, I remember that in the past, someone posted here how to use operator overloading in classic compilers, I have tried to find it however had no success :( Could someone post the link here? Thanks in advance.

Are the Delphi services unfeasible for real applications? :(

Are the Delphi services unfeasible for real applications? :( I really don't know what can be happening. My code is far simple, it gets info from the GPS via JNI structure, opens an connection to a remote database and that's all. I tried to isolate every main routine, but the GPS because it is mandatory. At first the application got a weird error that occurs just after few iterations (about 3 to 6 min running) and I post about it here, after create a new project everything was apparently ok, but the error is still there, now it take a longer, about 30 min to several hours and will crash the same way, with a non specific cause, error line whatever: Class aborted (6) As Roland Kossow suggests, could be a memory error. But I am using an application called "SystemPanel" where I can watch its behavior, including the resident memory, shared and effective memory, cpu usage and I don't see memory leaks or cpu overload. BUT, when the app crashes I cannot sometimes even stop

Splash Screens and About Boxes (Video)

Splash Screens and About Boxes (Video) http://www.davidghoyle.co.uk/WordPress/?p=1707 http://www.davidghoyle.co.uk/WordPress/?p=1707

Originally shared by Thomas Mueller (dummzeuch)

Originally shared by Thomas Mueller (dummzeuch) The method of changing the order of the TabSheets in a PageControl in Delphi is not obvious. Apparently there is no drag and drop support (at least not in Delphi 2007). You have to change the PageIndex property. So, if you want to insert a new page, add… http://blog.dummzeuch.de/2017/07/30/changing-the-order-of-tabsheets-in-a-pagecontrol-in-delphi/

Originally shared by Benjamin “BeRo” Rosseaux

Originally shared by Benjamin “BeRo” Rosseaux The PasVulkan Canvas class should have the most important features now incl. two-color-stop gradients, stroke dashes, optional triangulated shape caching, etc. https://www.youtube.com/watch?v=fv-tG9wAuVs&feature=autoshare

Originally shared by Thomas Mueller (dummzeuch)

Originally shared by Thomas Mueller (dummzeuch) As I stated before I prefer good bug reports on GExperts over money any time. Philip von Melle kept testing and providing feedback even after I thought the issue was already solved. The issue was that a Macro Template (%SELECTION) used on this code… http://blog.dummzeuch.de/2017/07/29/bug-in-macro-template-expert-fixed-yet-another-unicode-issue-in-gexperts/

"With the OSX target you have to use KeyDown instead of KeyUp handlers."

"With the OSX target you have to use KeyDown instead of KeyUp handlers." Is this a safe, known assumption and according to the guidelines? Test app (Berlin) with one line in FormKeyUp event handler: Caption := KeyChar; Press key, then shift-key twice. (m M M) Caption on Windows: 'm', 'M', 'M' Caption on Mac: 'm', 'm', 'M' My application uses key strokes to cycle through state. Technically I will inc/dec an Integer property. Initial value is 1. normal key: inc (cycle forward) shift key: dec (cycle backward) If I want to change state like this: 2-3-4-3-2 //expected m-m-m-M-M //keys pressed I get 2-3-4-3-2 //on Windows 2-3-4-5-4 //on Mac Found nothing in QP. Any other problems related to this? Known fix? (I am using KeyDown and will be ok for now.) (Another problem with KeyUp is the annoying sound produced by the arrow, home/end and prior/next keys.)

WANTED:

WANTED: Experienced Delphi programmers for a series of contracts EXPERIENCE: Delphi 5, 7, and XE preferred. Must have experience with the following using Delphi: o OOP, inheritance, scope, and interfaces. o COM servers and clients o Indy components, server applications, client applications o SQL databases including but not limited to Oracle, MySQL, and SQL Server o XML Should also be familiar with: o Generics o Multi-threading and asynchronous execution o DUnit o JSON The following are not necessary but would be a huge plus: o C#.NET o Java o JUnit o Javascript, AngularJS, NodeJS o Apache and Tomcat o zeroMQ o Retail software systems o OPOS o EFT payment systems LOCATION: This is a primarily a telecommuting position. You MUST be self-directed and capable of delivering solutions with a minimum of oversight. I am specifically looking for someone in the Modesto/Stockton/Tracy area, but this is not a hard requirement. Further away is not a bad thing, b

I am using AdvTreeView to view data from a db.

I am using AdvTreeView to view data from a db. Using "root, child: TAdvTreeViewNode;", after getting Root with "Root := TV.AddNode();" root shows a ".tag" property. I am setting it to the record's Id value. Cool so far. When I try to use the value with this method: procedure TfrmQTBugTracker_Main.tvBugsAfterSelectNode(Sender: TObject; ANode: TAdvTreeViewVirtualNode); var id: Integer; CNode: TAdvTreeViewVirtualNode; begin if ANode.Level= 0 then begin id := TAdvTreeViewNode(ANode).tag; begin dm_qtbt.GetBugHistory(id, tvbughistory); end; end; end; the Tag value is zero. Back in Root, I see a DataInteger property. Can someone show me how to use these properties? Thanks...Dan'l

With TAdvTreeNode, how can I read the text of the first childnode?

With TAdvTreeNode, how can I read the text of the first childnode? I am using CNode := RootNode.GetFirstChild. I get the Child but do not know how to get the text o the child.

Have you tried Windows 10's Hyper-V service for your Delphi development ? Any thoughts ?

Have you tried Windows 10's Hyper-V service for your Delphi development ? Any thoughts ? I've been using VMWare Workstation on a Windows machine which acts as a server for years for Delphi development. The server surely needs to be upgraded, but I find VMWare Workstation to be slower with each update. The news last year that the main VMWare WorkStation team was fired is not the best news either: http://www.theregister.co.uk/2016/01/27/vmware_fusion_and_workstation_development_team_fired/ So I'm thinking about switching to Hyper-V with an updated server and before doing advanced tests, I'd like to know if anyone has already jumped ship for Delphi development and could share some thoughts about it ? Note: I do not want to use Oracle's VirtualBox and am only interested in feedback on Hyper-V. The main advantages I see right now are: - Tightly integrated with Windows Pro - Starts / Stops VMs with Windows. This is not the case of VMWare Workstation (except auto-starting

Dashboard component

Dashboard component Hi all, I am looking for a component which allows me to create a dashboard. I have seen the solutions that most of the charting packages offer but I need the following features: * FMX * Allows dynamic dragging and move of the widgets * Allows embedded components. For example, in one widget I would like to have a grid or tree view and button * Allows multiple layouts (but this is something that can be implemented independently) I wanted to write my own but it looks a big task so before I do this I thought to ask if you know any such components (free or commercial) Thanks

Any idea why we get this error, or even better, how to fix it :

Any idea why we get this error, or even better, how to fix it : [dcc32 Error] JclRTTI.pas(663): E2134 Type ' ' has no type info We compile same code in about 6 projects successfully. Also this problematic project UnitTest-project builds just fine on our Jenkings integration box. Checked project settings against one builds just fine, some differences but did not have any effect. Reason why some projects work, but some don't, is weird.

Does any of you use speech recognition tools for writing code? I. E. Dragon and similar?

Does any of you use speech recognition tools for writing code? I. E. Dragon and similar? I had this dream where I could talk to the IDE, and it was way smarter than just taking literal text input. I could talk to it like an AI, and say "add a private property string to the class, named "something" with setter but no getter. Initialize it in create to empty string." Now I can't stop thinking about having such an IDE. #wishfulthinking

Originally shared by Boian Mitov

Originally shared by Boian Mitov How long it takes to rebuild the Mitov Software products? The last nights build time :-) #Delphi #OpenWire

I want to implement a fairly basic build process, and I know I could do it with batch files calling MSBuild, however I want to make it fairly dynamic, and more importantly, I want to be able to capture the results when MSBuild runs.

I want to implement a fairly basic build process, and I know I could do it with batch files calling MSBuild, however I want to make it fairly dynamic, and more importantly, I want to be able to capture the results when MSBuild runs. I've had a shot at running MSBuild using CreateProcess, however it apparently runs horrendously slow compared to doing it from the command line. I'm wondering whether it is worth using TJclClrHost from JCL to host the .NET runtime to, and/or to import the MSBuild .NET assembly (I haven't done anything like that in ages), or whether there's some other way of capturing the results of MSBuild? Before anyone makes the suggestions, I've already considered tools like FinalBuilder, Jenkins etc. This is something I'd like to explore for myself.

Microsoft Research's manual memory management for .NET: https://www.microsoft.com/en-us/research/wp-content/uploads/2017/07/snowflake-extended.pdf

Microsoft Research's manual memory management for .NET: https://www.microsoft.com/en-us/research/wp-content/uploads/2017/07/snowflake-extended.pdf Interesting concept of manual but safe memory management with exactly one owner of an object at any given moment and shields that prevent an object's destruction while it's still in use by other threads. https://www.microsoft.com/en-us/research/wp-content/uploads/2017/07/snowflake-extended.pdf

sucks result in converting with hextobin or bintohex fuction?

sucks result in converting with hextobin or bintohex fuction? I wanna convert hex to binary. in hex editor converter HEX STRING FFD8FFFE002446007B0 smoothly become "ÿØÿþ $F {" and vice versa but if I use Delphi hextobin FFD8FFFE002446007B0 become ␀F and if I use Delphi bintohex ÿØÿþ $F { become FF00D800FF00FE0020002400460020007B00 are there any another ways to convert it, as easy as hex editor here is the code procedure Tfrm1.btnToStringClick(Sender: TObject); var LStr1, LStr2: WideString; begin LStr1 := Memo2.Lines.Text; SetLength(LStr2, Length(LStr1) div 4); HexToBin(PWideChar(LStr1), LStr2[1], Length(LStr1) div SizeOf(Char)); Memo1.Lines.Text := LStr2; end; procedure Tfrm1.btToHexClick(Sender: TObject); var LStr1, LStr2: String; begin LStr1 := Memo1.Lines.Text; SetLength(LStr2, Length(LStr1) * 4); BinToHex(LStr1[1], PWideChar(LStr2), Length

Hi again!

Hi again! I posted the Table of Contents in the eBook owners' private Community already, but I guess it doesn't hurt if I post it here too. Your comments are welcome, though I may not be able to reply as promptly as I'd like. I'm extremely busy these days, trying to meet the promised deadline! If you have already ordered the eBook and really wish to contribute, to be sure your voice is heard, join the Community and post your comments there. You should have received the invitation via email already. If you haven't noticed it, check your mailboxes and spam folder too. The original invitation with the direct private link should be waiting there. Delphi Memory Management for Classic and ARC compilers Table of Contents Introduction Part 1. Memory management basics and terminology * Short overview of memory management models * How memory works? + Value types, pointers and references, unmanaged and managed types + Variable initialization + Invalid pointers/reference

StyleControls VCL + new styles from DelphiStyles.com!

Image
StyleControls VCL + new styles from DelphiStyles.com! Take a look on StyleControls VCL + new styles from DelphiStyles.com: "BlackRock" and "RegalBlue". Really cool styles! StyleControls Home: http://www.almdev.com Styles Home: http://www.delphistyles.com

I need a tree structure based on generics. In Spring4D tree structures not exists.

I need a tree structure based on generics. In Spring4D tree structures not exists. What do you recommend?

One of these rare moments when the compiler positively impresses me

One of these rare moments when the compiler positively impresses me See this short and incomplete nonsense code: type IFoo = interface procedure Bar; end; TBoo = class end; TBooHelper = class helper for TBoo procedure Bar; end; TBar = class(TInterfacedObject, IFoo) private fBoo: TBoo; property Boo: TBoo read fBoo implements IFoo; end; The thing that impressed me here was the fact that the interface delegation clause supports class helpers - very nice! In production code this enables me to use interface delegation to some object without the need to create some wrapper/adapter object.

I'm curious about people's views about the general design of the FMX 2D graphics API.

I'm curious about people's views about the general design of the FMX 2D graphics API. This is from the point of view of it being a modernised and cross platform re-imagining of the VCL's 2D graphics capabilities (which don't extend very far, but do what they promise to do without fuss). To be clear (or clear-ish!), I'm not asking about FMX as such, just this part. Digging a bit into the current version (I last worked with FMX in anger in XE3), my first through was 'hmm, this is a lot of code'. However, my second thoughts were much more positive - on Windows, the 2D graphics implementation is looking like a pretty direct, yet high-ish level wrapping of Direct2D, so quite VCL-like in spirit (which was/is a pretty direct, yet high-ish level wrapping of the Windows API - the GDI in the 2D graphics case). On the the hand, maybe it suffers from the usual FMX ills for other things... so what do people 'in the trenches' think about it...?

I'm curious about people's views about the general design of the FMX 2D graphics API. This is from the point of view of it being a modernised and cross platform re-imagining of the VCL's 2D graphics capabilities (which don't extend very far, but do what they promise to do without fuss). To be clear (or clear-ish!), I'm not asking about FMX as such, just this part.

I'm curious about people's views about the general design of the FMX 2D graphics API. This is from the point of view of it being a modernised and cross platform re-imagining of the VCL's 2D graphics capabilities (which don't extend very far, but do what they promise to do without fuss). To be clear (or clear-ish!), I'm not asking about FMX as such, just this part. Digging a bit into the current version (I last worked with FMX in anger in XE3), my first through was 'hmm, this is a lot of code'. However, my second thoughts were much more positive - on Windows, the 2D graphics implementation is looking like a pretty direct, yet high-ish level wrapping of Direct2D, so quite VCL-like in spirit (which was/is a pretty direct, yet high-ish level wrapping of the Windows API - the GDI in the 2D graphics case). On the the hand, maybe it suffers from the usual FMX ills for other things... so what do people 'in the trenches' think about it...?

I am using TAdvTreeView. I am populatig the nodes in collection mode.

I am using TAdvTreeView. I am populatig the nodes in collection mode. How do I get the nod text to show? Populating: procedure TfrmQTBugTracker_DM.FillBugsTree(var TV: TAdvTreeView); var i: Integer; root, child: TAdvTreeViewNode; begin tv.beginupdate; tv.columns.clear; tv.columns.add.Text :='Tile'; tv.columns.add.Text :='Bug Data'; qryBugs.open; while not qryBugs.eof do begin Root := TV.AddNode();//( root.Text[0] := qryBugs.fieldByName('Title').asstring; Child := TV.AddNode(Root); Child.Text[0] := qryBugs.fieldByName('Owner').asstring; TV.expandNode(root); qrybugs.Next; end; qryBugs.close; end; Reading the Text: procedure TfrmQTBugTracker_Main.tvBugsGetNodeText(Sender: TObject; ANode: TAdvTreeViewVirtualNode; AColumn: Integer; AMode: TAdvTreeViewNodeTextMode; var AText: string); begin AText := tvBugs.Columns[AColumn].Text; end; The treeview appears to be empty.

Fun program for the day:

Fun program for the day: {$APPTYPE CONSOLE} uses System.SysUtils, System.IOUtils; procedure Main; var Ch: Char; begin for Ch := low(Ch) to high(Ch) do if TPath.HasValidPathChars(Ch, False)<>TPath.HasValidPathChars(Ch, True) then Writeln('different at #' + IntToStr(ord(Ch))); Writeln('finished'); end; begin Main; Readln; end. See https://stackoverflow.com/questions/45346525/why-tpath-hasvalidpathchars-accepts-as-valid-char-in-a-path https://stackoverflow.com/questions/45346525/why-tpath-hasvalidpathchars-accepts-as-valid-char-in-a-path

Blog post "Some Data from the 2017 RAD Studio Developers Survey" at http://blog.

Blog post "Some Data from the 2017 RAD Studio Developers Survey" at http://blog.marcocantu.com/blog/2017-july-developersurvey.html http://blog.marcocantu.com/blog/2017-july-developersurvey.html

Blog post "Some Data from the 2017 RAD Studio Developers Survey" at http://blog.marcocantu.com/blog/2017-july-developersurvey.html

Blog post "Some Data from the 2017 RAD Studio Developers Survey" at http://blog.marcocantu.com/blog/2017-july-developersurvey.html http://blog.marcocantu.com/blog/2017-july-developersurvey.html

i'm new in delphi, i want to replace some string in Delphi

i'm new in delphi, i want to replace some string in Delphi characters I wanna replace are tab, newline, carriage return, and space into null if in c sharp was like this replacement = Regex.Replace(g, @"\t|\n|\r|\s", ""); is there any something like this in Delphi?

BACKGROUND

BACKGROUND I developed a Calibration and Maintenance tracking system that I sell online. In 2011 I ported the application from VB6 to Delphi XE. At the same time a created translations for 9 of the languages utilizing code page 1252. To provide spellchecking, I used the Jedi jvSpellchecker. This has seems to work acceptably for all 10 languages. PROBLEM STATEMENT I have recently added Polish and Czech translations. However, I am having problems with Spellchecking. The spell checker seems to see all words that have characters that are unique to code page 1250 as errors. At the moment I don't know if this is all such characters or some characters. This problem is destined to get worse because I have Vietnamese and Chinese in the works. I am not looking for a detailed answer to all the problems I face but only some ideas on how to get started. In starting to work on this problem, I realize that there too many things that I don't know. I need some resources to better prepare mysel

This is strange. What could cause a "[dcc32 Error] smxLicenseSvc_Impl.pas(42): E2037 Declaration of 'InternalValidateLicence' differs from previous declaration" when the declarations are identical?

This is strange. What could cause a "[dcc32 Error] smxLicenseSvc_Impl.pas(42): E2037 Declaration of 'InternalValidateLicence' differs from previous declaration" when the declarations are identical? function InternalValidateLicence(aLicence: TsmLicence): Boolean; virtual; function InternalValidateLicence(aLicence: TsmLicence): Boolean; override; Thanks

Originally shared by Boian Mitov

Originally shared by Boian Mitov How long it takes to rebuild the Mitov Software products? The last nights build time :-) #Delphi #OpenWire

We show a legitimate use case for hooking into code at run-time, and demonstrate how this can be done in a way that works on all platforms.

We show a legitimate use case for hooking into code at run-time, and demonstrate how this can be done in a way that works on all platforms. https://blog.grijjy.com/2017/07/26/cross-platform-code-hooking/

Hi

Hi, I have a question. I am using TDBCtrlGrid and inside TDBCheckBox. When I change value in this checkbox in one row, all checkboxes across all rows are changed. I have tried code that manually changes the field boolean value, but still all checkboxes are changing. Does anyone have a solution for this? Thanks
What is the best way to use old-style TStrings.AddObject('text', TObject(int)) in ARC environment ?

I hate the way Delphi handles UTF8 String

Image
I hate the way Delphi handles UTF8 String Why the IDE do not shows the difference between "é" and "é" in two UTF8String ! DN and Info.DN are of the same type, UTF8String : type TInfoPS = record DN: UTF8String; function Equals(const Info: TInfoPS): Boolean; end; function TInfoPS.Equals(const Info: TInfoPS): Boolean; begin Result := Info.DN = DN: end;

Hi.

Hi. Once again a very productive mobile development made in Delphi. Matchstick Drawing can save billions in inefficient decision processes over all economies worldwide. Enjoy - if you own an Android device ;-) https://play.google.com/store/apps/details?id=de.cybertribe.MatchDecision https://play.google.com/store/apps/details?id=de.cybertribe.MatchDecision

Delphi XE2:

Delphi XE2: function TSomeClass.AddHotkey(const _Caption: string): string; var i: Integer; c: AnsiChar; begin Result := _Caption; if HotKey = #0 then Exit; //==> c := UpCase(HotKey); for i := 1 to Length(Result) do if UpCase(Result[i]) = c then begin Insert('&', Result, i); Exit; //==> end; Result := Result + ' (&' + c + ')'; end; Error: "Operator not applicable to this operand type" in the line if UpCase(Result[i]) = c then begin WTF? (Hotkey is a property of type AnsiChar.) Typecasting c to Char makes this compile: if UpCase(Result[i]) = Char(c) then begin And then there is a warning: "Implicit string cast from AnisChar to string" in the line Result := Result + ' (&' + c + ')'; which again can be "fixed" with a cast from c to Char. Can somebody please explain to me, why an implicit typecast from AnsiChar to Char could possibly become a problem?

Hello guys

Hello guys, Has does someone measured how slow is an external function call or if it is even noticeable? I am wondering if we have some considerable performance penalty on calling external functions. Thank you :D

real case test MM parallel 4x scalable (i7 6700)

real case test MM parallel 4x scalable (i7 6700) (on the newer processors will be linear) I did a small test with real code scenario, look at parallel zlib with my patch, zcompress loop 1000 of a 1100KB text file: uses System.Zlib; threadvar INS: TMemoryStream; OUTS: pointer; SizeIn: integer; SizeOUT: integer; procedure TForm.CompressClick(Sender: TObject); var Count: integer; begin Count := GetTickCount; TParallel.For(1,1000,procedure(I:integer) begin INS := TMemoryStream.Create; INS.LoadFromFile('c:\teststream.txt'); SizeIn := INS.Size; GetMem(OUTS, SizeIn); SizeOUT := SizeIn; ZCompress(INS.Memory, SizeIn, OUTS, SizeOUT, zcFastest); INS.Free; FreeMem(OUTS); end); ShowMessage(IntToStr(GetTickCount - Count)); end; - fastmm4 900-1000msec - brainMM 563msec - msheap 532msec - my patch Intel IPP + TTB 281 msec www.dellapasqua.com www.dellapasqua.com/intelTBB.rar (put a teststream.txt file on c:\ and run files) http:

Driver DBExpress e Servidor REST em PHP

https://youtu.be/L5v8Nn--p5Q

Check out whats new in FirePower 10 Update 1. This update is free for registered FirePower 10 users.

Check out whats new in FirePower 10 Update 1. This update is free for registered FirePower 10 users. https://youtu.be/EH9cu-2ZICk

Android platform, Delphi Berlin : I suppose TRestRequest.Execute not beeing synchronous in some cases.

Android platform, Delphi Berlin : I suppose TRestRequest.Execute not beeing synchronous in some cases. If you look at System.Net.HttpClient line 1155, method procedure THTTPClient.ExecuteHTTP, you will notice (I have shorten the code) that : If TThread.CurrentThread.ThreadID = MainThread then TThread.CreateAnonymousThread(procedure begin ExecuteHTTPInternal(....); Repeat until FTerminated; end).start else ExecuteHTTPInternal(....); My issue is that I'm calling TRestRequest.Execute from an anonymous thread.... and I really need it to be blocking. Any thought on this ?

I would like to port some code, away from MSXML, to Delphi's own. If possible (Sure it's possible, but how complicated to code will be).

I would like to port some code, away from MSXML, to Delphi's own. If possible (Sure it's possible, but how complicated to code will be). Code I need to port uses XPath, is there any good sane way to find nodes by some way. Need to find node by name for sure and most likely also attribute (value). IS there feature like this build in that I just missed, or some code that would search for nodes in the DOM. Just to clarify that I am strictly trying to reduce external dependencies. If anyone has code for searching nodes from DOM with Delphi's own XML solution, I am all ears, how to do it, or where is code that I could test.

I'm using Delphi TREST framework and filling parameters thanks to the TRESTRequestParameterList object.

I'm using Delphi TREST framework and filling parameters thanks to the TRESTRequestParameterList object. I need to pass a parameter string like this : S1111x/54647 My parameter will wrongly be put in the request's HTTP header. TRESTRequest.Execute will fails because the URL not correctly formated : I will get this http://mywebservice/Products/Infos/S1111x/54647 instead of this http://mywebservice/Products/Infos/S1111x%754647 Is this my "responsibility" to escape this char or must this be done by the TREST framework ?

RTTI question

RTTI question How to use rtti to check if a class field is an interface of a specific type? rFld : TRttiField; result := (rFld.FieldType is TRttiInterfaceType) and (?? is IMyInterface);

Delphi Memory Management (Book) - New G+ Community!

Delphi Memory Management (Book) - New G+ Community! Hi there! :) Thanks again everyone for preordering the book! As we're getting closer to the release date, I have created a new private community where we can already discuss the book's content. The first thing I'm going to publish there is the Table of Contents. There may still be enough time to add some chapters, so feel free to make a suggestion if you feel something is missing. Obviously, I may not be able to accommodate all the requests, at least not for the first edition. But hey, there's a reason why it's called "the first edition". There's always room for improvements, second editions or updates :) Anyway, I plan to send a personal invite to everyone who has ordered the book so far, and everyone ordering it from now on, but you're welcome to ask to join already. You can ask to join here https://plus.google.com/u/0/communities/117407853275620795387 But please remember, it's a PRIVATE gro

Re-sharing this. We would really like someone who knows Delphi or development or IDEs in general, ie is familiar with what we do, as well as - of course - experience in product marketing. Please send to your colleagues, contacts, etc.

Re-sharing this. We would really like someone who knows Delphi or development or IDEs in general, ie is familiar with what we do, as well as - of course - experience in product marketing. Please send to your colleagues, contacts, etc. Originally shared by Jim McKeeth Job Opening for a Product Marketing Manager! https://www.linkedin.com/jobs/view/395016381/

When opening various projects, I intermittently get a message:

When opening various projects, I intermittently get a message: Cannot open file "". The filename, directory name, or volume label syntax is incorrect. The project is fine -- ie. I can open source code and compile. Any suggestions on why this occurs and how to cure it (e.g. is there some path in the .dproj that needs to be removed?)

Spring4D

Spring4D Is it possible to register and resolve from the container the classes associated with the Owner relationship? TBaseClass = class fOwner : TBaseClass; constructor Create(aOwner : TBaseClass); end; constructor TBaseClass.Create(aOwner : TBaseClass); begin fOwner := aOwner; end; TSomeClass = class(TBaseClass) TNextClass = class(TBaseClass) fSomeClass : TSomeClass; constructor Create(aOwner : TBaseClass; aSomeClass : TSomeClass); end; TOtherClass = class(TBaseClass) fNextClass : TNextClass; constructor Create(aOwner : TBaseClass; aNextClass : TNextClass); end; fOtherClass := Container.Resolve ; fOtherClass is owner for fNextClass is owner for fSomeClass How to use Spring in this case?

I did this stupid mistake to delete my Android* folders hoping that the IDE will download them again.... Seems like IDE cannot download AndroidSDK anymore... I've tested this on Delphi Berlin + Delphi Tokyo (that is taking dust...).

I did this stupid mistake to delete my Android* folders hoping that the IDE will download them again.... Seems like IDE cannot download AndroidSDK anymore... I've tested this on Delphi Berlin + Delphi Tokyo (that is taking dust...). Can someone try this steps : Open Delphi Berlin Tools -> Options SDK Settings Save your current Android SDK configuration and rename all AndroidNDK and AndroidSDK folders (C:\Users\Public\Documents\Embarcadero\Studio\18.0\CatalogRepository) Delete your Android SDK configuration Create new Firemonkey empty project Select Android platform Compile Act: IDE ask you to download Android SDK Cur: An error as occured (somehow translated from French) Exp: Package should be downloaded. All my internet connections seems ok. No firewall issues No av issues Can anyone test this ?

New "Regal Blue Clear" FM Style released!

Image
New "Regal Blue Clear" FM Style released! Let me introduce our new semi-transparent style! http://www.delphistyles.com

Hello

Hello, I've played with PNG format to build a tiny PNG Loader and it works well :) https://github.com/tothpaul/Delphi/tree/master/TinyPNG https://github.com/tothpaul/Delphi/tree/master/TinyPNG

Originally shared by Benjamin “BeRo” Rosseaux

Originally shared by Benjamin “BeRo” Rosseaux On-GPU-Antialiased lines are also implemented now at the PasVulkan Canvas class. The next step will be to complete the actual Polygon-Draw-API and add linear&radial gradient fill styles. https://www.youtube.com/watch?v=y-H5Cax5G70&feature=autoshare

Job Opening for a Product Marketing Manager!

Job Opening for a Product Marketing Manager! https://www.linkedin.com/jobs/view/395016381/

That can be hard to fix :( My service is working "fine" for a few minutes so it raises and exception "Class aborted (6)" and the break point end at libc.so. So if I am not in the IDE I have to uninstall or restart the device because it becomes stucked on memory and I cannot kill it.

That can be hard to fix :( My service is working "fine" for a few minutes so it raises and exception "Class aborted (6)" and the break point end at libc.so. So if I am not in the IDE I have to uninstall or restart the device because it becomes stucked on memory and I cannot kill it. I am commenting some special parts to try to get the error, so far no luck. A critical part will envolve this: lJsonStream := TStringStream.Create(Utf8Encode(AJson)); lIdHTTP := THTTPClient.Create; lIdHTTP.CustomHeaders['auth'] := Auth; lIdHTTP.CustomHeaders['uid'] := uID; lIdHTTP.ContentType := 'application/json'; lUrl := FBaseURL + APIResource; AResponseContent := TStringStream.Create(); lIdHTTP.Put(lUrl, lJsonStream, AResponseContent); lJsonStream.DisposeOf; That part will write data to Google Firebase, it works, but I suspect something here...

Be careful not to create Münchhausen packages!

Be careful not to create Münchhausen packages! There are stories about the German Baron Münchhausen which gives the impression that this man must be the ancient founder of the Impossible Mission Forces. In one of these stories the baron rescues himself from a swamp by tearing himself on his own hair. Some Delphi packages seem to be written in honor of the baron. They use components in their forms that are actually not registered until the package itself is loaded. This leads to the problem that opening such a form while the package is not loaded yet, say because of a compilation error or a stray DSK file, those components are removed from the DFM file. Be sure to revert to a previous version then. Please, do me a favor: Either use only standard components in your packages or make sure that any form making use of those custom components is in a separate package, so that the component package can be compiled and installed as a prerequisite. https://de.wikipedia.org/wiki/Hieronymus_Carl_F

Special Summer offer from KSDev team for FmxLinux. Time limited offer to end of July only - 50% off for Personal Life-Time License.

Special Summer offer from KSDev team for FmxLinux. Time limited offer to end of July only - 50% off for Personal Life-Time License. http://www.fmxlinux.com/order.html http://www.fmxlinux.com

Our new blog article on using Google Sign-In for Firebase. We demonstrate how to directly embed the Google SignIn SDK in your app to present a seamless experience for the user from signing in, all the way to requesting Google authentication scopes and using various Google APIs.

Our new blog article on using Google Sign-In for Firebase. We demonstrate how to directly embed the Google SignIn SDK in your app to present a seamless experience for the user from signing in, all the way to requesting Google authentication scopes and using various Google APIs. https://blog.grijjy.com/2017/07/20/using-google-sign-in-for-firebase-sdk-on-android/ https://blog.grijjy.com/2017/07/20/using-google-sign-in-for-firebase-sdk-on-android/

CrossVcl 0.5 just released

CrossVcl 0.5 just released Main new feature is supporting of Linux64 compiler. Support is very limited for Linux now, mostly few simple controls and graphics. The main goal is checking the sources on new LLVM-compiler. http://www.crossvcl.com http://www.crossvcl.com

A First Peak at Water, our New IDE for Windows

http://blogs.remobjects.com/2017/07/20/a-first-peak-at-water-our-new-ide-for-windows/?utm_source=blog&utm_medium=googleplus&utm_campaign=water-preview-announcement

Spring resolver problem...

Spring resolver problem... I try resolve factory method (previously registered in container) and I get compile error: {$M+} TCompaniesManagerFactory = reference to function(const aAuthKey : RAuthKey) : ICompaniesManager; {$M-} var lCompaniesManagerFactory : TCompaniesManagerFactory; begin lCompaniesManagerFactory := Container.Resolve ; <- line with error Error: [dcc32 Error] E2010 Incompatible types: 'TCompaniesManagerFactory' and 'Procedure of object' ps. I know about composition root and others IoC rules... please tell me why I get compile error, types are compatible

Hello

Hello, after many tests, and seeing many sources deeply, I can speak imho the best libs for multiscalar app comes from Intel TBB, Intel IPP Mem manager multithreaded from 70seconds to 4seconds check www.dellapasqua.com please feel free to test it or join me to enlarge it with many functions from IPP Intel Best regards Roberto Della Pasqua (does somebody wants join me to add other IPP functions to the RTL of Delphi/FPC?) thanks to Alexander Brazda http://www.dellapasqua.com

Can you mark a Property as deprecated - like FPC allows?

Can you mark a Property as deprecated - like FPC allows? I want to do this: property SomeProp: string read FSomeProp write SetSomeProp; deprecated 'Use SomeOtherProp instead'; Free Pascal (FPC) allows this, but Delphi XE doesn't. Does later Delphi versions support this? Is there any work-around for Delphi XE?

Hint on a project compiled by Delphi XE7 keeps flashing on a Surface Pro 4 when using the stylus (no issue with a...

Image
Hint on a project compiled by Delphi XE7 keeps flashing on a Surface Pro 4 when using the stylus (no issue with a mouse). The strange thing is that if the cursor is near the right edge of the device, the flashing stops. Anyone knows how to fix this?

Hint on a project compiled by Delphi XE7 keeps flashing on a Surface Pro 4 when using the stylus (no issue with a mouse). The strange thing is that if the cursor is near the right edge of the device, the flashing stops. Anyone knows how to fix this?

Image
Hint on a project compiled by Delphi XE7 keeps flashing on a Surface Pro 4 when using the stylus (no issue with a mouse). The strange thing is that if the cursor is near the right edge of the device, the flashing stops. Anyone knows how to fix this?
Is there an implementation of ToJsonString/FromJsonString for XE2 ? If not, how can I implement it ?

Fellow Delphi developers

Fellow Delphi developers, FmxLinux 1.03 just released. FmxLinux is full featured FireMonkey implementation for Linux. What's new in this update: + Added: Radial Gradient pattern + Fixed: Few minor issues More info at: http://www.fmxlinux.com KSDev Team http://www.fmxlinux.com

Happened yesterday:

Happened yesterday: Workaround found for the FMX TMainMenu Visibility problem! On the touch screen you don't want the menu, except for the case when you 'temporarily need it'. So, you build the menu at runtime, then destroy and recreate via touch button. Recreation will result in a firework, flicker and flacker for about 4 seconds, because RecreateOSMenu is called for each TMenuItem you add. Implementation section only workaround: procedure TMainMenu.RecreateOSMenu; var Form: TOpenCustomForm; begin if (Tag > -1) //trick and ([csDestroying] * ComponentState = []) then begin ... end; end; //from the test app... procedure TFormMain.SetMainMenuVisible(const Value: Boolean); begin if Value and not Assigned(MainMenu) then begin MainMenu := TMainMenu.Create(self); MainMenu.Tag := -1 MainMenu.Parent := self; PopulateMenu; //custom code UpdateMenu; //custom code MainMenu.Tag := 1; MainMenu.RecreateOSMenu; //once end else if Assi
Do you code for fun or as job?
Still cant deploy a app to Apple Store. Now Apple Store complains about my app saying was build with a BETA VESION(?).Anybody please is using TOKYO and can deploy to Apple store apps?

The Beacon sample, called BLEBeaconScanner is not working with Tokyo. It will fail here:

The Beacon sample, called BLEBeaconScanner is not working with Tokyo. It will fail here: BinToHex(@ScanResponse.Items[TScanResponseKey.ManufacturerSpecificData][BEACON_GUID_POSITION], PChar(LSTBuff), GUID_LENGTH); On previous Delphi (Berlin) it worked. Error is: [DCC Error] Unit4.pas(112): E2010 Incompatible types: 'System.TArray ' and 'Pointer' I tried to solved but of course I couldn't :)

Global bookmarks in source code editor?

Global bookmarks in source code editor? Is that possible? I'm using Delphi XE. If not is XE, is it available in later Delphi versions? If not, is there some IDE add-on that makes this possible? I apply good OOP practices, so my code is broken up into many classes and units. It is super frustrating that I can't bookmark locations in various files and jump between them. Lazarus IDE and EditPad Pro (text editor) allows this, and it is very useful.

How on Earth do you create a bitmap animation in FireMonkey once you have a bitmap strip?

How on Earth do you create a bitmap animation in FireMonkey once you have a bitmap strip? Does anybody know? I tried for 10 mins yesterday but couldn't do it - and I had to go to bed to be in work at my usual time today. A

Hi!

Hi! Say that you have a RemObjects server and you want to preserve the ability to deploy both an x32 and an x64 version... how do you deal with DB connection DLLs at design time? I am currently using ZeosDBO because I need PostgreSQL that isn't supported(as far as I know) by FireDAC locally. A

Originally shared by Boian Mitov

Originally shared by Boian Mitov My second Video Processing with Delphi article has just been published in the "Blaise Pascal Magazine" #Delphi #OpenWire

I'm starting to develop to Android platform, and I attached a Moto G5 Plus (Android 7.0) to my Windows 10 (1703). I'm using Delphi Berlin Upd 2.

I'm starting to develop to Android platform, and I attached a Moto G5 Plus (Android 7.0) to my Windows 10 (1703). I'm using Delphi Berlin Upd 2. I try to start a small app (which is running without problems on Windows an on IOS Simulator), but, on Android I'm receiving the following error message: "unable to start /proc file '/proc/31515/status'", cannot attach to lwp 31515: no such file or directory (2). I've already tested connecting through MTP and PTP, with the same result. And this error occurs before "Application.Initialize", so I suppose this is probably a configuration problem. But I really do not have a clue. Anyone have already faced this situation? How to solve it?

Delphi Examples Android App : https://delphi.uz/portfolio/delphi-examples-android-app-by-delphi-uz/

Delphi Examples Android App : https://delphi.uz/portfolio/delphi-examples-android-app-by-delphi-uz/ https://delphi.uz/portfolio/delphi-examples-android-app-by-delphi-uz/

Originally shared by Benjamin “BeRo” Rosseaux

Originally shared by Benjamin “BeRo” Rosseaux Delphi 7 support is now dropped at PasVulkan, primarly because of new used syntax stuff at https://github.com/BeRo1985/pasvulkan/blob/master/src/PasVulkan.Types.pas and https://github.com/BeRo1985/pasvulkan/blob/master/src/PasVulkan.Math.pas and the minimum supported FreePascal version for PasVulkan is now 3.1.1 due to 1. hardfloat callconv keyword on the ARM Android target platform and 2. Generics.* Units, so therefore only newer Delphi versions and FreePascal versions are supported now, for to simplify the development process of PasVulkan for me . Sometimes such old versions hardcuts does indeed hurt but these are sometimes necessary in order to be able to continue to work meaningfully. In connection with this, the SupraEngine will be called now PasVulkanEngine and it will be now an part of the parent PasVulkan project, for to avoid unnecessary doubled doubled work. https://github.com/BeRo1985/pasvulkan/blob/master/src/PasVulkan.Math.p

Using Firedac with Services will crash the application.

Using Firedac with Services will crash the application. I moved to dbExpress and now using TSQLConnection plus TSQLQuery. I am updating a simple table and it works but raises an exception: "feature not implemented". Tips?
Using Firedac with Services will crash the application. I moved to dbExpress and now using TSQLConnection plus TSQLQuery. I am updating a simple table and it works but raises an exception: "feature not implemented". Tips?

Can I write this? Or how to do it?

Can I write this? Or how to do it? I have a database reader which uses generics and declared like this: IDatabaseReader Now, based on a parameter I can call the reader for different . var readerCustomer: IDatabaseReader ; readerAddress: IDatabaseReader ; begin readerCustomer:=TDatabaseReader .Create; readerAddress:=TDatabaseReader .Create; end; Instead of declaring the readers I tried to do something along these lines: var reader: IDatabaseReader ; readObject: TObject; begin if param=Customers then readObject:=@TCustomers; <---???? reader:=TDatabaseReader<@readObject>.Create; <---???? end; Would something like this be possible? Or, perhaps, with RTTI? Thanks

Maybe there are Delphi developers that use a sampling profiler that is also supposed to work in C++ Builder?

Maybe there are Delphi developers that use a sampling profiler that is also supposed to work in C++ Builder? Originally shared by Mike Versteeg I'm looking for an easy to use 64 bit profiler for my windows applications. As my apps are usually timing sensitive (but repetitive) I prefer one that's least intrusive, which I understand is a sampling profiler. Any recommendations?

using a firemonkey listbox. with align set to alnone, anchors set to aktop & akright. When I display the listbox using listbox.visible := true the align anchors seem to have no affect. I want the listbox to appear at the top just below the toolbar and align to the right side of the application. What I am looking for is more like an alignment that aligns to the top right just below the tool bar at the top and above the status bar at the bottom. FYI I am using Delphi Berlin.

using a firemonkey listbox. with align set to alnone, anchors set to aktop & akright. When I display the listbox using listbox.visible := true the align anchors seem to have no affect. I want the listbox to appear at the top just below the toolbar and align to the right side of the application. What I am looking for is more like an alignment that aligns to the top right just below the tool bar at the top and above the status bar at the bottom. FYI I am using Delphi Berlin.

What RDBMS do you use when doing location-aware things?

What RDBMS do you use when doing location-aware things? More specifically, I am looking into a simple app with use of GPS. All I need to do is: - Get a location - Verify if there is a nearby location in the DB - Show some information if there is I am trying to use PostGis but it's really awful to use. What does everyone else use? QF, I am thinking of just going with longitude and latitude as integers by multiplying by 1M. Opinions?

And while I am on the topic, I am also not impressed with the Delphi 10.1 Starter. It did install ok, and seems generally to work, but the IDE is brain damaged. Ctrl+Alt+Up Arrow and Ctrl+Alt+Dn Arrow are both dead. I probably use those more than most others.

And while I am on the topic, I am also not impressed with the Delphi 10.1 Starter. It did install ok, and seems generally to work, but the IDE is brain damaged. Ctrl+Alt+Up Arrow and Ctrl+Alt+Dn Arrow are both dead. I probably use those more than most others. I spend my work days in D2007 and XE7, which for their various faults, both seem better than this mess. If this is marketing, I will eat my hat.

Tried to install Delphi 10.2 Starter Edition. Many errors during the installation process. Complaints that downloads were terminated by the user. Many retries. Eventually, it reported success. Tried some simple operations, and was convinced the installation was bad. Uninstalled.

Tried to install Delphi 10.2 Starter Edition. Many errors during the installation process. Complaints that downloads were terminated by the user. Many retries. Eventually, it reported success. Tried some simple operations, and was convinced the installation was bad. Uninstalled. Tried to re-install. It reports that there is an existing installation. Offers to uninstall. I tried. It fails. Tried removing the original Studio\19.0 tree. Cleaned BDS\19.0 from registry. Still says there is a prior installation. Nice stuff. Update: A couple of passes with CCleaner and a reboot made it possible to try again on the installation. After clicking retry 40 times (yes, I counted) on error reports, I gave up. The error was always the same, and early in the process. Not a product worth my time, I guess. Details: Windows 10 Pro, Core i7 4790K @ 4GHz , 32GB RAM, and plenty of available disk. Gigabit fiber. No apparent excuse for such flaky behavior. I would be embarrassed to recommend this to anyone. B

Hi!

Hi! Installed Berlin on new computer. Mobile platforms don't show up. Going to "Modify/Uninstalll" in the control panel only shows Uninstall as enabled. Tried clicking "Manage platforms" but the two mobile ones don't appear. Suggestions? Why can't things be done simply and properly? A

Hello everyone, I have a big FMX app that is running on android devices in some companies and one of those asked me an iOS version too for their iPhone. I do not have a mac computer so I want to use my VMWare and install El Captain.

Hello everyone, I have a big FMX app that is running on android devices in some companies and one of those asked me an iOS version too for their iPhone. I do not have a mac computer so I want to use my VMWare and install El Captain. I have seen that the documentation suggests to use a mac computer and run on it a windows virual machine with Delphi on it. I can't afford to buy a new mac (expensive as hell). Does delphi work properly if on my win10 I run mac on VMWare? I mean, my win is powerful enough and I can use a bridged connection, so PAserver should be able to recognize my mac. Can this work?
The subscription renewal price went up quite a bit, unless I get 24 or 36 months . I'll have to think if I can justify renewing.

It took me a while to address an awful IDE crash issue.

It took me a while to address an awful IDE crash issue. If you install a design time package which uses RTTI to populate custom attributes declared in the package, recompiling it will make the IDE fatal failed and have to be killed. (Even you don't save references to them) Tested in Win10/7, from "Seattle" to "Tokyo". [Fatal Error] Access violation at address 5005F8A8 in module 'rtl250.bpl'. Read of address 2B571F7C (see https://quality.embarcadero.com/browse/RSP-18600 ) This is caused by a "design defect" of the RTTI. Those live rtti objects in the shared pool will not be immediately freed when unloading a package. Instead it will be freed when you retrieve rtti next time. But this will be a problem for user-defined attributes as their containing packages have been unloaded... Later I also found similar issue reported in 2015 ( https://quality.embarcadero.com/browse/RSP-11620 ) I think this should be marked as a high priority issue. It might h

It took me a while to address an awful IDE crash issue. If you install a design time package which uses RTTI to populate custom attributes declared in the package, recompiling it will make the IDE fatal failed and have to be killed. (Even you don't save references to them) Tested in Win10/7, from "Seattle" to "Tokyo".

It took me a while to address an awful IDE crash issue. If you install a design time package which uses RTTI to populate custom attributes declared in the package, recompiling it will make the IDE fatal failed and have to be killed. (Even you don't save references to them) Tested in Win10/7, from "Seattle" to "Tokyo". [Fatal Error] Access violation at address 5005F8A8 in module 'rtl250.bpl'. Read of address 2B571F7C (see https://quality.embarcadero.com/browse/RSP-18600 ) This is caused by a "design defect" of the RTTI. Those live rtti objects in the shared pool will not be immediately freed when unloading a package. Instead it will be freed when you retrieve rtti next time. But this will be a problem for user-defined attributes as their containing packages have been unloaded... Later I also found similar issue reported in 2015 ( https://quality.embarcadero.com/browse/RSP-11620 ) I think this should be marked as a high priority issue. It might h

Is this code thread safe?

Is this code thread safe? Can I access on Canvas of bitmap created on form1 but used only by my thread and not displayed / used by form1? Eg: TmyTh = class(TThread) .... end; TForm1 = class(TForm) procedure Form create(...); public Bmp: TBitmap; end; procedure TForm1.FormCreate(...) begin Bmp := TBitmap.create; .... end; procedure TmyTh.execute; begin ... Form1. Bmp.Canvas.moveto(....); Form1. Bmp.Canvas.lineto(....); Form1. Bmp.SaveToFile(...); end;

My service is working fine, stating it as TJService.

My service is working fine, stating it as TJService.JavaClass.START_STICKY but if I close host it remains running on the Android memory, but will act no more. The main loop if locked on a Thread (Also tried a TTask). Android keep it as Idle forever.
My service is working fine, stating it as TJService.JavaClass.START_STICKY but if I close host it remains running on the Android memory, but will act no more. The main loop if locked on a Thread (Also tried a TTask). Android keep it as Idle forever.

Sometimes when a service call is made to my datasnap server (Rest), they get

Sometimes when a service call is made to my datasnap server (Rest), they get WorkManager.execSvc1 : 49 Policy: C8514498 Illustration Error: Failed : HTTP error code : 500 . Does anyone know why they get this? Is there anything we can do to fix it, or do they just need to have a retry mechanism. After they get the error, they try again and it works..

This irks me. Why can't I write my equations in natural form?

This irks me. Why can't I write my equations in natural form? program WhyDoEmbarcaderoNotCareAboutPerformance; {$APPTYPE CONSOLE} uses System.Diagnostics; const RepCount = 25000; var Data: array [0..8191] of Double; procedure Main; var i, j, rep: Integer; Stopwatch: TStopwatch; begin Writeln('/2.0'); for j := 1 to 5 do begin for i := low(Data) to high(Data) do begin Data[i] := 666*i; end; Stopwatch := TStopwatch.StartNew; for rep := 0 to RepCount-1 do begin for i := low(Data) to high(Data) do begin Data[i] := Data[i]/2.0; end; end; Writeln(Stopwatch.ElapsedTicks); end; Writeln('*0.5'); for j := 1 to 5 do begin for i := low(Data) to high(Data) do begin Data[i] := 666*i; end; Stopwatch := TStopwatch.StartNew; for rep := 0 to RepCount-1 do begin for i := low(Data) to high(Data) do begin Data[i] := 0.5*Data[i]; end; end; Writeln(Stopwatch.ElapsedTicks)

How to bring Help Window to the front?

How to bring Help Window to the front? I tend to leave windows or applications running - it's faster that way, but I don't use a tiled desktop layout (applications rather appear behind each other). But one very annoying thing (actually there are many things) is that when I press F1 (or the Help button) in the IDE to display some or other help, it doesn't bring the Help Window to the front. It simply flashes in the task bar. This makes no sense. If I explicitly pressed F1, I would expect it to show me the help I requested. Instead I have to now first leave the keyboard, grab the mouse and then click the annoying flashing taskbar button. Then only do I see the help I requested. Is there any way to tell Delphi to bring the help window to the front when I press F1? I'm using Delphi XE under Windows 7.

Note that I have no other ties to it other than reposting here for visibility. https://www.linkedin.com/jobs/view/369932269/

Note that I have no other ties to it other than reposting here for visibility. https://www.linkedin.com/jobs/view/369932269/ Manager of Applications Development Robert Half Technology Lombard, IL 60148 I have an immediate need for a Software Development Manager in Chicago's Western Suburbs. This is a full-time, direct-hire role and is a brand new role based on company growth! This role entails the leadership and technical direction of a 7-8 person development team. As a growing company, they are looking to tighten up processes and implement procedures to handle their growth. This new role will be tasked with researching, strategizing and implementing those improvements and efficiencies. We definitely need someone who has been through these growing pains. While this is a not a very hands-on role, this is not a huge company and people pitch in where needed. As such, we need someone who is willing to sit a computer and help when needed during crunch-time, releases, etc. Additional re

Hi people!

Hi people! What is the JNI wrapper to get the accelerometer info? I am developing an Android service and was able to use a wrapper to avoid TLocation and it works fine, but I would need the motion sensor too. Any clue? Thanks

Originally shared by Boian Mitov

Originally shared by Boian Mitov Pictures and Videos from the HexLab Makerspace "Hangout and Games Night" last week :-)

Moving source code units using Project Manager window?

Moving source code units using Project Manager window? I'm using Delphi XE, and I noticed that I can drag files up or down in the Project Manager window, and while dragging I see a nice blue line showing the target drop position. But it seems that is as far as it goes - nothing further happens with the drop action. I have my project layout with a few directories (eg: src/model; src/other; src/tests etc). I expected to be able to drag a unit from the "model" directory to the "other" directory - inside the Project Manager window. The IDE would then update the program unit, .dpr and .dproj files with the moved unit. But it doesn't do any of that! I have to do a "File -> Save As...", and save it in the new location. Then use Windows Explorer to manually delete the old copy of the unit! Has this terrible usage been improved since Delphi XE? I sure hope so. Otherwise, what is the point of the Project Manager window's drag-n-drop functionality then

How do I disable “cursor beyond end of line”?

How do I disable “cursor beyond end of line”? I've searched the internet and saw posts as far back as 2007 complaining about this. Is there really still no option to disable this behaviour in Delphi XE and beyond? For example: https://stackoverflow.com/questions/17977490/how-do-i-disable-cursor-beyond-end-of-line https://stackoverflow.com/questions/17977490/how-do-i-disable-cursor-beyond-end-of-line

Do you code in Delphi ?

Do you code in Delphi ? Update: 296 Yes in one week = 3.3% of the 9K members. Not a massive number, but it is summer and holidays perhaps?

This bored me from some times now...

This bored me from some times now... Did anyone noticed how slow is TDatasetField ? Double clicking on a TDatasetField will display another DBGrid. Moving this TDataset DBGrid is slow as hell ! Is there any workaround ?

Summary page showing supported platforms and OS versions for XE4 and upwards, as well as links to known issues for specific versions.

Summary page showing supported platforms and OS versions for XE4 and upwards, as well as links to known issues for specific versions. http://docwiki.embarcadero.com/PlatformStatus/en/Main_Page http://docwiki.embarcadero.com/PlatformStatus/en/Main_Page

CrossVCL - Next Step

CrossVCL - Next Step Couple of news from KSDev Team. When Apple decides to stop support of 32-bit application on macOS we’ve started investigation of CrossVCL future. The core part of CrossVCL of course is VCL and how it can co-exists in new environment (next-get compiler). There is no 64-bit Delphi compiler yet, but all new Emba’s compiler are LLVM based (ARC, no AnsiString, no Asm etc). The only one way to check it is use brand-new Linux Delphi compiler which came with Tokyo. And after few months of silent we eventually can say - CrossVCL is coming to new world of next-gen Delphi compiler and opening new platforms: Linux and coming macOS-64 bit. There are still lot of to-do, but we happy to announce future of CrossVCL. Current version 0.42 still for 32-bit macOS only. New version will come next month. http://www.crossvcl.com https://youtu.be/ywaREmrHrBo

JEDI library on D10.2 Tokyo

JEDI library on D10.2 Tokyo Hi all, I am trying to compile an open source project which uses the JCL, JVCL and JWAPI from the JEDI library. I have downloaded the latest release but when I compile the project I get the a few errors. I am not very familiar with those units but after a quick look around, I think most of the problems come from lack of defines for 10.2. So, I wanted to ask whether someone has an updated version of JEDI that compiles in 10.2 Thanks

On Tokyo seems to not more Firedad Oracle and MS SQL link components?

On Tokyo seems to not more Firedad Oracle and MS SQL link components? I just update from Berlin to Tokyo and now that components are missing. Anybody else?

Undeclared Identifier in editor. It does the red squiggly underline and the tooltip shown "undeclared identifier 'xxx'", yet my program compiles (and Builds) just fine, and I can Ctrl+LClick to navigate to that method or function. I have a LOT of cases like this in my code.

Undeclared Identifier in editor . It does the red squiggly underline and the tooltip shown "undeclared identifier 'xxx'", yet my program compiles (and Builds) just fine, and I can Ctrl+LClick to navigate to that method or function. I have a LOT of cases like this in my code. So why does Delphi IDE keep thinking it is a undeclared identifier? I'm using Delphi XE by the way.
how can i detect active network type or name? iOS and Android?

FireDAC does not support Firebird 3? Really?

FireDAC does not support Firebird 3? Really? http://docwiki.embarcadero.com/Status/en/FireDAC_Database_Support http://docwiki.embarcadero.com/Status/en/FireDAC_Database_Support
how can i detect active network type or name? iOS and Android?

hello

hello, does somebody has a fast asm function to do a Pos with PChars or array of bytes instead of strings? ( I want avoid the @uniquestring call each time) For 64bit for example PosBin(SubStr:TBytes; Source: Pointer; Index:UInt64); thank you

Fellow Delphi developers

Fellow Delphi developers, We are glad to announce a huge 60% discount on HelpNDoc Professional Edition, including updates and upgrades starting now, and for a few hours only: https://www.helpndoc.com/news/2017-07-11-60-discount-today-only-helpndoc-professional-edition HelpNDoc is an easy to use yet powerful help authoring tool producing CHM help files, responsive HTML and mobile Websites, DocX and PDF manuals, ePub and Kindle eBooks as well as Qt Help files from a single source. HelpNDoc is Free for personal use and evaluation purposes and is available at: https://www.helpndoc.com But hurry up as this 60% discount will only be available for a few hours... https://www.helpndoc.com/news/2017-07-11-60-discount-today-only-helpndoc-professional-edition Follow our step-by-step video guides to learn how to use HelpNDoc: https://youtu.be/u1XVAR985g8?list=PLe52dEok5gAlrGpJ9IxdFEfVrCjTucOhF Best regards, John, HelpNDoc team. https://www.helpndoc.com Join us on social networks... * RSS feed: htt

I need to use a forward class.

I need to use a forward class. The main class is a DM (TAndroidService), the completed class is just after, of course, but I am getting a "class is not yet completely defined" error. Is there any incompatibility here? I hope I am doing the wrong thing.
I need to use a forward class. The main class is a DM (TAndroidService), the completed class is just after, of course, but I am getting a "class is not yet completely defined" error. Is there any incompatibility here? I hope I am doing the wrong thing.

Does your app need a little speed boost? Take a look at how you can use SIMD assembly language to optimize critical parts of your Windows, macOS, iOS and Android apps.

Does your app need a little speed boost? Take a look at how you can use SIMD assembly language to optimize critical parts of your Windows, macOS, iOS and Android apps. https://blog.grijjy.com/2017/07/10/simd-assembly-optimization/

ANN: StyleControls VCL v. 3.74 released!

Image
ANN: StyleControls VCL v. 3.74 released! http://www.almdev.com StyleControls is a stable, powerfull package (more than 100 components), which uses Classic drawing, system Themes, GDI+ and VCL Styles. This package contains the unique solutions to extend standard VCL controls and also has many unique, advanced controls to create modern applications (UWP design). Also with this package you can really improve applying and using of VCL Styles in your application. What's new: • added: HintComponent (TscHint) property for all edit controls (themed and GP) • added: Hint and ShowHint propertires for LeftButton and RightButton in all edit controls (themed and GP) • added: some minor improvements • updated custom form demos

ANN: ImageKit v.1.20 released!

Image
ANN: ImageKit v.1.20 released! http://www.almdev.com ImageKit is a GPU based image processing, graphics rendering framework for Delphi developers. ImageKit hides the details of low-level graphics processing by providing an easy-to-use application programming interface. ImageKit provides dozens of built-in filters. You set up filters by supplying key-value pairs for a filter’s input parameters. The output of one filter can be the input of another, making it possible to chain numerous filters together to create amazing effects. Features: • GPU based image processing, graphics rendering framework • dozens of built-in filters and thousands of possible chains • VCL, GDI and GDI+ interoperability • avanced GPU based image view control • 2D, 3D transformations • support software device if hardware isn't available • high level DirectX 10 wrapper control and renderer • special animation class for properties in any third-party controls (smooth animation) • special page view control with 3D t

Hi

Hi, I have need to create a simple file sharing service, for about 1000/2000 customers, today I use dropbox, I was looking for a new Amazon or Azure cloud solution that I have no experience. I saw that there are various modules and I do not know what I need to look at. I think like "Storage Module" I need a Windows Server. I will use, for now a few commands: - Files List - Upload - Download - Delete.. What do you recommend me? p.s. Can I connect via Remote Desktop? Can I install my .exe DataSnap Server?

Hello.

Hello. I'm trying to create a wizard for Delphi and I had a question of using it on different versions of Delphi. For each version I must to build wizard separately or is there some way to build once and use under most versions? In dll wizard'e there is dependence on designide. When I build a wizard under D2010 and run under D10 - the IDE freezes. Thank you in advance

I'm getting a lot of requests for an Android widget for my Firemonkey app. I know I can't create the widget in Firemonkey but wonder if anyone knew a way to bundle a natively created widget with my app?

I'm getting a lot of requests for an Android widget for my Firemonkey app. I know I can't create the widget in Firemonkey but wonder if anyone knew a way to bundle a natively created widget with my app? I've created a simple home screen widget in Java, but can't figure out the rest. It was suggested to generate the widget app as a .jar file and bundle into the Delphi project but I can't figure out how to generate a jar file in the first place. I'm new to the Java side so maybe it's just not possible to generate a .jar like this from an Android Studio app project? It may not physically be possible to do what I'm trying to, but thought it would be worth asking before I gave up! Thanks in advance

Hello!

Hello! What are the outstanding issues that you have found blocking or really annoying in Tokyo? Specifically I am seeking clarifications in the following areas: 1) IDE 2) Compilers 3) Mobile (Android most of all) 4) Anything else I am trying to make my mind up as to if I should install it or not. A

How to deploy your IOS app using Tokyo 10.2? You cant! you must downgrade XCODE and cross your fingers. Always good surprises from IDERA. And no solution after 6 months. Congratulatiosn people.

How to deploy your IOS app using Tokyo 10.2? You cant! you must downgrade XCODE and cross your fingers. Always good surprises from IDERA. And no solution after 6 months. Congratulatiosn people. https://community.embarcadero.com/answers/tokyo-10-2-rad-studio-not-compiling-to-ios-for-app-store,-error-e0776-xcrun-error-unable-to-find-utility-packageapplication-,-not-a-developer-tool-or-in-path https://community.embarcadero.com/answers/tokyo-10-2-rad-studio-not-compiling-to-ios-for-app-store,-error-e0776-xcrun-error-unable-to-find-utility-packageapplication-,-not-a-developer-tool-or-in-path

I've just released Delphi Unit Dependency Scanner (DUDS) as open source. You can find it here - https://github.com/norgepaul/DUDS

I've just released Delphi Unit Dependency Scanner (DUDS) as open source. You can find it here - https://github.com/norgepaul/DUDS https://github.com/norgepaul/DUDS

OmniPascal is now running on Windows, Mac and Linux!

Image
OmniPascal is now running on Windows, Mac and Linux! http://blog.omnipascal.com/omnipascal-0-14-0-mac-and-linux-support/

I have a weird thing happening. I have a base form and the font.size is set to 11. Now when I create a descendant from the inherited tab on File | New it sets the font.size to 9 and also changes the size of the form (smaller).

I have a weird thing happening. I have a base form and the font.size is set to 11. Now when I create a descendant from the inherited tab on File | New it sets the font.size to 9 and also changes the size of the form (smaller). This is using Delphi Seattle. (Which brings me on to another issue - when I moved an application to Seattle from XE8 the font.sizes changed on the forms to much higher values) (I have a weird feeling I might have asked this before) Thanks

DelphiLibSass – A Delphi wrapper for LibSass

DelphiLibSass – A Delphi wrapper for LibSass DelphiLibSass is Delphi wrapper around libsass a C/C++ implementation of a Sass compiler. Based on the version of libsass 3.4 http://adamjohnston.me/delphilibsass-delphi-wrapper-libsass/ DelphiLibSass https://github.com/novuslogic/DelphiLibSass/ http://adamjohnston.me/delphilibsass-delphi-wrapper-libsass/

I failed at 7 questions....

I failed at 7 questions.... https://docs.google.com/forms/d/e/1FAIpQLScRsfRHXPTuEXdNvUcI8DzJIU5iazqlpksWucPF0d8l2ztkkA/viewform

I never thought abut this before, but today I noticed that the "Release" target of one of my projects turns off the "typed @ parameter" compiler option while the "Debug" target turns it on.

I never thought abut this before, but today I noticed that the "Release" target of one of my projects turns off the "typed @ parameter" compiler option while the "Debug" target turns it on. I know that it is supposed to check whether the value passed to a pointer type parameter matches the parameter's declaration and I always thought that to be a compile time check, not a run time check. So, if that's the case, why would I ever want to turn off this option?

Hello to all. Could someone please say is it correct solution?

Hello to all. Could someone please say is it correct solution? procedure TF_Main.Button1Click(Sender: TObject); begin Parallel.Async( procedure OmniControl1:= CreateTask(Task1, 'Task1'); OmniControl1.Run; //wait 100 ms, if not finish - stop and nil Milliseconds:= 100; try Tick := GetTickCount + DWord(Milliseconds); while (Milliseconds > 0) and (Finised = False) do begin DSiProcessThreadMessages; Milliseconds := Tick - GetTickcount; end; except // end; // if Finised = False then begin Try OmniControl1.Stop; except end; Try OmniControl1:= nil; except end; Sleep(10); end; end); end;
OmniThreadLibrary 3.07.2 was released today. Also updated: "The book"!

Originally shared by Kim Madsen

Originally shared by Kim Madsen I had to tell my day job employer last week, that he should expect me to be only half as wise from this Wednesday and in all future. Obviously that got some attention. The potential issues with employing a previously “full wit” but now halfwit, who expect… http://components4developers.wordpress.com/2017/07/06/im-only-half-as-wise-as-i-were-yesterday/

New free VCL Style from DelphiStyles.com available in GetIt!

Image
New free VCL Style from DelphiStyles.com available in GetIt! New life for old VCL Style "Aqua Light Slate" with new name "Aqua Light Slate 2".

I have error when use CloneCursor : '[FireDAC][Comp][Clnt]-303. Capability is not supported'

I have error when use CloneCursor : '[FireDAC][Comp][Clnt]-303. Capability is not supported' Here is stackoverflow : https://stackoverflow.com/questions/44916953/error-exception-class-efdexception-with-message-firedaccompclnt-303-capa Please help me. Thank you very much. https://stackoverflow.com/questions/44916953/error-exception-class-efdexception-with-message-firedaccompclnt-303-capa

Hello everybody

Image
Hello everybody, Small preview concept of form designer for Delphi "True Native" Crossplatform library. Just a draft, which can be included in final product. #TrueNativeUILibrary #DelphiOnMobile #Delphi #RadStudio

I'm doing an Android service.

I'm doing an Android service. It includes Motion Sensor, Location Sensor and the Telephony framework. After put it all together the application is crashing with Segmentation fault (11) that doesn't helps nothing. Following the crash debug finish here: procedure BindAppGlueEvents() AndroidAppGlue := PANativeActivity(System.DelphiActivity)^.instance; I tried do comment some lines, now the app should only call a notification and exit, but also fails. I waste a lot of hours yesterday trying to make it run again. Running Delphi Tokyo with Java 8. Thanks for any help

I'm doing an Android service. It includes Motion Sensor, Location Sensor and the Telephony framework. After put it all together the application is crashing with Segmentation fault (11) that doesn't helps nothing. Following the crash debug finish here:

I'm doing an Android service. It includes Motion Sensor, Location Sensor and the Telephony framework. After put it all together the application is crashing with Segmentation fault (11) that doesn't helps nothing. Following the crash debug finish here: procedure BindAppGlueEvents() AndroidAppGlue := PANativeActivity(System.DelphiActivity)^.instance; I tried do comment some lines, now the app should only call a notification and exit, but also fails. I waste a lot of hours yesterday trying to make it run again. Running Delphi Tokyo with Java 8. Thanks for any help