Posts

Showing posts from January, 2018

A vendor distributes trial code that needs to be linked as runtime packages. They provided instructions thusly:

A vendor distributes trial code that needs to be linked as runtime packages. They provided instructions thusly: enable the Project --> Options...--> Packages --> Runtime Packages --> Link with runtime packages IDE option However, in Delphi 10.2.2 (2004) the Project -> Options panel has a "Packages" option at the left, but selecting it only displays Design packages. There's nothing there for runtime packages, and no way to say "Link with runtime packages". I've seen it before, but I cannot find it anywhere now. Can anybody else see this? Or did it move somewhere else?

LINQ… what is LINQ? Well its a term used in C# which means Language Integrated Query. Next version of kbmMW will support our own variant of LINQ.

LINQ… what is LINQ? Well its a term used in C# which means Language Integrated Query. Next version of kbmMW will support our own variant of LINQ. http://c4d.asuscomm.com/wordpress/2018/01/30/kbmmw-linq-1/

I wrote a small introduction paper about Blockchain, if someone interested, including to revise the text here it is:

I wrote a small introduction paper about Blockchain, if someone interested, including to revise the text here it is: https://www.magnumlabs.com.br/blockchain-with-introduction-and-object-pascal-overview/ The intention was not to dig a lot but to present the concept. https://www.magnumlabs.com.br/blockchain-with-introduction-and-object-pascal-overview/

Originally shared by Thomas Mueller (dummzeuch)

Originally shared by Thomas Mueller (dummzeuch) I just fixed bug #20: Todo-List does not parse the whole comment It works now in my tests for Pascal and C++ files. But since I don't really use C++ I would appreciate if somebody who does also tried it on a project that has more than a few artificially created TODOs. https://sourceforge.net/p/gexperts/bugs/20/

Mysterious entry in the Event Log:

Mysterious entry in the Event Log: -- -- Module Load: urlmon.dll. No Debug Info. Base Address: $6FE80000. Process MyApplication.exe (24448) Debug Output: internal\onecorecom\inc\combase\comcataloghelpers.hpp(67)\ole32.dll!0B20A59F: (caller: 0B20A63B) ReturnHr(1) tid(5e4c) 80004002 No such interface supported -- -- Any idea what this is?
Quick Question ... are there any good tools available to generate class diagrams / hierarchy from existing code? Or doesn't anyone do that anymore ?

Spring4D

Spring4D How to correctly assign NULL to a Nullable type? this is correct? fDateTime = Null; or this? fDateTime := nil;

Anyone tips for a TVersion structure that supports at max quad digits or wildcards and comparison?

Anyone tips for a TVersion structure that supports at max quad digits or wildcards and comparison? Like 3.2 matching 3.2.5.7, but not matching 3.3.4.28 ?

ESBPCS for VCL v6.9.2 - we are pleased to announce a new release of our huge collection of Delphi components and routines aimed at making Data Entry and Manipulation easier.

Image
ESBPCS for VCL v6.9.2 - we are pleased to announce a new release of our huge collection of Delphi components and routines aimed at making Data Entry and Manipulation easier. https://esbconsult.com/esbpcs/

And we are live!

And we are live! Originally shared by Jim McKeeth Another LIVE! Episode of the Podcast at Delphi.org on Tuesday. https://www.youtube.com/watch?v=Zqwpu5vk4Xg&feature=autoshare

Hello, I will have a question from one of my clients. I proposed a study to migrate their Delphi heavy client application to 3-third party applications with a DataSnap server. But my client wonders about the resistance of such an architecture to the load. It is an accounting application and a human resources application. Depending on them, there may be up to 800,000 postings per month (i. e. JSON REST HTTP transactions between clients and the server). Knowing that these entries will be spread over different countries with time differences and therefore at different times, generally about forty customers (thus 800 0000 / 40) over one month, every day. so 700 daily entries * 40 in parallel (not necessarily at the same time, but possibly) I would like to reassure them by explaining that this load is held by DataSnap without any problem (this obviously depends on the configuration of the web server I guess). Is DataSnap limited in number of parallel connections? What about the number of supported requests?

Hello, I will have a question from one of my clients. I proposed a study to migrate their Delphi heavy client application to 3-third party applications with a DataSnap server. But my client wonders about the resistance of such an architecture to the load. It is an accounting application and a human resources application. Depending on them, there may be up to 800,000 postings per month (i. e. JSON REST HTTP transactions between clients and the server). Knowing that these entries will be spread over different countries with time differences and therefore at different times, generally about forty customers (thus 800 0000 / 40) over one month, every day. so 700 daily entries * 40 in parallel (not necessarily at the same time, but possibly) I would like to reassure them by explaining that this load is held by DataSnap without any problem (this obviously depends on the configuration of the web server I guess). Is DataSnap limited in number of parallel connections? What about the number of su

Optimizing ARC the hard way

http://dalijap.blogspot.com/2018/01/optimizing-arc-hard-way.html

Hello, I have a question that is more complex than I thought

Hello, I have a question that is more complex than I thought On a Delphi software with a mail function, the body is a TMemo and it's possible to add attachments. the mail can be sent with SMTP (IdSMPT) or through MAPI (JvMail). Now I have a request for HTML Support...for the SMTP part it's not a problem, but MAPI do not know HTML, especialy with embedded images and attachments. I've tried to create an .EML file, but ShellExecute() open it as an incoming mail, not a mail to send. So is there an easer solution than adding an IMAP request to put the sent mail in the outbox ? Of course I don't know the mail software that will be used (ThunderBird, Windows Mail, Outlook...), that's why MAPI/ShellExecute looks great at first. Thanks.

Originally shared by Thomas Mueller (dummzeuch)

Originally shared by Thomas Mueller (dummzeuch) I have made a few changes to the code in Fake TSpeedButton based on a TBitBtn: I replaced all that line drawing with a call to the WinAPI function DrawEdge. I set both bitmaps to Transparent. I moved the bitmap generation to a sub procedure. Thus I got… http://blog.dummzeuch.de/2018/01/29/fake-tspeedbutton-based-on-a-tbitbtn-updated/

The Professional edition of Active Query Builder adds new controls to the base component for visual SQL query building: SQL Text Editor, Expression Editor with code completion and syntax highlighting, and the tree-like SQL Filter Builder. SQL Formatter is now capable to customize the formatting of CASE and IF clauses.

The Professional edition of Active Query Builder adds new controls to the base component for visual SQL query building: SQL Text Editor, Expression Editor with code completion and syntax highlighting, and the tree-like SQL Filter Builder. SQL Formatter is now capable to customize the formatting of CASE and IF clauses. Project news: https://www.activequerybuilder.com/news.html?sec=1-1 https://www.activequerybuilder.com/news.html?sec=1-1

CrossVcl 0.99k just released. Start building macOS and Linux VCL apps with Embarcadero Delphi and CrossVcl. Bunch of fixes and new features like - hint and popup cells.

Image
CrossVcl 0.99k just released. Start building macOS and Linux VCL apps with Embarcadero Delphi and CrossVcl. Bunch of fixes and new features like - hint and popup cells. What's new: http://crossvcl.com/history.html More Info: http://www.crossvcl.com

Very interesting article on Unicode-code.

Very interesting article on Unicode-code. http://rvelthuis.blogspot.fi/2018/01/strings-on-other-platforms-than-32-bit.html?m=1 We really should get Fast-code project up and running cooperation with Embarcadero. I think there is lot in Current RTL and VCL/Fmx frameworks that have room for optimization. Without direct cooperation will be hard to get code through. Sure there could be some Unit that patches original code, but getting them to Embarcadero code base is the way to go (I think). Also some Embarcadero sponsored prices would be good for motivation (for some) We can make QC reports but ready to replace code with unit tests and speed measurement projects (etc) would be way better way. I think it should focus on Unicode, 64bit code. But in anyway from lowest levels towards the GUI.

Originally shared by Thomas Mueller (dummzeuch)

Originally shared by Thomas Mueller (dummzeuch) When you google for TSpeedButton and Focus a lot of hits are where people ask how to set the focus to a TSpeedButton and the answer of course is, that it isn’t possible because TSpeedButton descends from TGraphicControl which does not have a window handle… http://blog.dummzeuch.de/2018/01/28/fake-tspeedbutton-based-on-a-tbitbtn/

Is there a component like TSpeedButton that can receive the Focus? TSpeedButton cannot because it is derived from TGraphicsControl and not from TWinControl. But since the question "How do I make TSpeedButton receive the focus?" must have been asked a Gazillion times over the years, I can't believe that nobody has written a component that solves that problem. But my Google fu left me.

Is there a component like TSpeedButton that can receive the Focus? TSpeedButton cannot because it is derived from TGraphicsControl and not from TWinControl. But since the question "How do I make TSpeedButton receive the focus?" must have been asked a Gazillion times over the years, I can't believe that nobody has written a component that solves that problem. But my Google fu left me. What I need is TSpeedButton's ability to stay down until pressed again, but it should take the focus and be pressed with the space bar. This is about VCL only.

Originally shared by Thomas Mueller (dummzeuch)

Originally shared by Thomas Mueller (dummzeuch) The ToolsAPI interface IOTAComponent declares two methods for getting property values: [delphi] IOTAComponent = interface(IUnknown) // […] { Given the index or name, returns the property value. The untyped var must be large enough to hold the returned… http://blog.dummzeuch.de/2018/01/27/beware-iotacomponent-getpropvalue-needs-4-bytes-for-an-enum/

Petra Wins Embarcadero Cool App for December

https://community.embarcadero.com/article/16600-petra-wins-embarcadero-cool-app-for-december?utm_source=Facebook_Organic&utm_medium=social

Great project to build native mobile apps using delphi

Image
Great project to build native mobile apps using delphi Originally shared by Yaroslav Brovin Hey hey hey, New fresh news about new really native crossplatform UI mobile library for Delphi. A few months of hard work have brought really cool features and awesome results. For those who haven't heard nothing about new project this links: - https://plus.google.com/u/0/+YaroslavBrovin/posts/eP2Wf6jjkQ8 - https://plus.google.com/u/0/+YaroslavBrovin/posts/GYbWbbZ1mDK - https://plus.google.com/u/0/+YaroslavBrovin/posts/bdpKqGmT5NW - https://plus.google.com/u/0/+YaroslavBrovin/posts/VxwXjfUrnFG For other i'm glad to share with you my results. There were made a lot of changes, but let's look at the order. 1. Full Support FlexBox. What is it? it's a very cool layout engine from css web. You can look how it's powerfull by these links: - https://medium.freecodecamp.org/an-animated-guide-to-flexbox-d280cf6afc35 - https://www.w3.org/TR/css-flexbox/ - https://facebook.github.io/yoga

I recently added a FireMonkey component to CEF4Delphi.

I recently added a FireMonkey component to CEF4Delphi. CEF4Delphi is an open source project to embed Chromium-based browsers in applications made with Delphi but until now, it only had VCL components. It's my first FMX component and it was developed using Delphi 10.2. It only works in Windows and I'm 100% sure it's not compatible with some older implementations of FireMonkey. I would be grateful if you could test the FMXExternalPumpBrowser demo and make some comments in the forum to improve it. Thanks! https://github.com/salvadordf/CEF4Delphi https://github.com/salvadordf/CEF4Delphi

Does anybody use tabs in the code editor? If yes, how do you do that?

Image
Does anybody use tabs in the code editor? If yes, how do you do that? In all my installations the following happens: procedure bla; begin blub; pressing enter results in procedure bla; begin blub; So, the tab remains, but the new line is indented by spaces. I have enabled Tools -> Options -> Editor Options -> Source Options * Use tab character * Show tab character * Show space character The example is in Delphi 10.2.2 but I have experienced the same behaviour in Delphi 2007 and XE2.

Fellow Delphi Developers!

Image
Fellow Delphi Developers! New VCL Style with adstract background just released: "Puerto Rico": http://www.delphistyles.com/vcl/PuertoRico.html

New fresh news about *Native Crossplatform UI* mobile library fro Delphi.

Image
New fresh news about *Native Crossplatform UI* mobile library fro Delphi. Originally shared by Yaroslav Brovin Hey hey hey, New fresh news about new really native crossplatform UI mobile library for Delphi. A few months of hard work have brought really cool features and awesome results. For those who haven't heard nothing about new project this links: - https://plus.google.com/u/0/+YaroslavBrovin/posts/eP2Wf6jjkQ8 - https://plus.google.com/u/0/+YaroslavBrovin/posts/GYbWbbZ1mDK - https://plus.google.com/u/0/+YaroslavBrovin/posts/bdpKqGmT5NW - https://plus.google.com/u/0/+YaroslavBrovin/posts/VxwXjfUrnFG For other i'm glad to share with you my results. There were made a lot of changes, but let's look at the order. 1. Full Support FlexBox. What is it? it's a very cool layout engine from css web. You can look how it's powerfull by these links: - https://medium.freecodecamp.org/an-animated-guide-to-flexbox-d280cf6afc35 - https://www.w3.org/TR/css-flexbox/ - https://fac

Hi

Hi TCriticalSection under iOS, Android and Linux use TMonitor. Is TMonitor safe and efficient on theses platforms ? Is there a more native implementations ?

Our week of MVVM draws to a close with a look at the Views. It talks about binding actions and collections and it shows how to make controls data-binding-aware.

Our week of MVVM draws to a close with a look at the Views. It talks about binding actions and collections and it shows how to make controls data-binding-aware. https://blog.grijjy.com/2018/01/26/mvvm-starter-kit-part-3-of-3/

Hey hey hey

Image
Hey hey hey, New fresh news about new really native crossplatform UI mobile library for Delphi. A few months of hard work have brought really cool features and awesome results. For those who haven't heard nothing about new project this links: - https://plus.google.com/u/0/+YaroslavBrovin/posts/eP2Wf6jjkQ8 - https://plus.google.com/u/0/+YaroslavBrovin/posts/GYbWbbZ1mDK - https://plus.google.com/u/0/+YaroslavBrovin/posts/bdpKqGmT5NW - https://plus.google.com/u/0/+YaroslavBrovin/posts/VxwXjfUrnFG For other i'm glad to share with you my results. There were made a lot of changes, but let's look at the order. 1. Full Support FlexBox. What is it? it's a very cool layout engine from css web. You can look how it's powerfull by these links: - https://medium.freecodecamp.org/an-animated-guide-to-flexbox-d280cf6afc35 - https://www.w3.org/TR/css-flexbox/ - https://facebook.github.io/yoga/ Mobile devices have a lot of different form factors, so creating a really flexible UI is v
Is there no shortcut in the IDE for Quick Edit?

iOS Debugging Issue

iOS Debugging Issue Hi I have 2 Macs for FMX/iOS development. One has High Sierra (10.13.1), the other has Sierra (10.12.6). They both have the latest XCode and PAServer (10.2.1.10)) on them but only the Sierra Mac supports breakpoints from RAD Studio. The little blue dots in the editor gutter don't appear and any breakpoints are immediately disabled. It all works as expected on the other (Sierra) Mac. On the non-working Mac, I don't have to supply my password when I start PAServer which seems unusual. Anyone seen this before? Cheers Vince

Hi

Hi, Can someone give me a hint on what can I check to detect the exact problem with Delphi Tokyo 10.2.2 (latest build)? When I create an empty Firemonkey form application and compile to OSX, I get the error: Abnormal Termination and the IDE will crash. My XCode version is 9.2 and I also installed the latest compatible command line tool. The connection to PAServer is OK Notes: - I didn’t compile anything for OSX before with this VM. - I can compile to Linux without issues (also using FMXLinux) Thx
For a project that's using PBear's THTMLViewer, what could that be replaced with that runs on the Tokyo release?

IDE Fix Pack 6.2 for Delphi 2009-10.2 is released.

IDE Fix Pack 6.2 for Delphi 2009-10.2 is released. - Bugfix: Directory file search cache failed under 10.2 Tokyo due to compiler changes: "program or unit xxx recursively uses itself". - Added: Compiler codegen optimization option -x-orc to generate faster code for "begin Result := GetRecordWithManagedTypes; end;" functions. http://andy.jgknet.de/blog/2018/01/ide-fix-pack-6-2/

Hello all.

Hello all. I'm developing a Firemonkey application where I have a (portrait mode) fullscreen PDFs slideshow, using fmx animations and effects to see a nice result. I would like to be able to show/replicate this fullscreen application also in a vertical - portrait mode - TV (tipically a 40"), and the goal should be to get this without using cables. I've goggled a lot for delphi examples, blog posts, etc. without a real help, except a nice Steffen Nyeland 2014 example on how to start a youtube video from a desktop application using a Chromecast dongle. My feelings are that a Chromecast could be a road to explore. Any advice on how to pratically implement this type of PC to TV "application cast"? Thanks Marco
Jim McKeeth is talking about BlockChain and #Dephi and also talking about #PascalCoin - "Delphi and the Blockchain" 25/01/2018 Webinar.
Does anyone knows a existing implementation of bcrypt or scrypt for delphi?

Hello all, I have a class that has a generic list and a dynamic array which holds interfaced objects (interface references to objects).

Hello all, I have a class that has a generic list and a dynamic array which holds interfaced objects (interface references to objects). The generic list is freed at the class destructor. Does anyone know if the interface reference count of the interfaced objects is set to zero before/or when the generic list is freed and when the dynamic array is about to go out of scope or do I have to set the interface reference to nil to reduce the reference count.

Is anyone using DUnitX to run unit tests on Linux?

Is anyone using DUnitX to run unit tests on Linux? I keep getting an AV (see https://github.com/VSoftTechnologies/DUnitX/issues/201 ) DUnit just works.

Part 2 of our MVVM trilogy is all about ViewModels and how to unit test them.

Part 2 of our MVVM trilogy is all about ViewModels and how to unit test them. https://blog.grijjy.com/2018/01/24/mvvm-starter-kit-part-2-of-3/

I just thought of how I can improve (refactor?) some of my panels. In one of my projects I have 200+ panels to organize layout (on various PageControls) and about 20 of them are used to split view for side by side view - so I set in the ParentPanel OnResize: Panel.Width := ParentPanel.Width div 2; (and Panel has Align = alLeft and the other Panel has Align = alClient so they split the ParentPanel view)

Image
I just thought of how I can improve (refactor?) some of my panels. In one of my projects I have 200+ panels to organize layout (on various PageControls) and about 20 of them are used to split view for side by side view - so I set in the ParentPanel OnResize: Panel.Width := ParentPanel.Width div 2; (and Panel has Align = alLeft and the other Panel has Align = alClient so they split the ParentPanel view) Simple, it works OK. The problem is that each of this panels need to have this Width code in their Parent OnResize and I set this in Object Inspector. And is annoying to track down which panel has this set and which doesn't. So I wanted to simplify this by extending the TPanel: TPanel = class(Vcl.ExtCtrls.TPanel) private FSetChildPanelWidthAsHalf: boolean; // Enable Width div 2 FChildPanel: TPanel; // Set which Panel get set Width div 2 protected procedure Resize; override; public property SetChildPanelWidthAsHalf: Boolean read FSetChildPanelWidthAsHalf write FS

Just FYI....

Just FYI.... https://community.embarcadero.com/article/articles-support/16598-upgrade-sku-to-be-discontinued-in-q4

gold

Image
gold Originally shared by Delphi Be a yardstick of quality. . #Motivation

The PyScripter IDE, which is written in Delphi is looking for translators. We have set up a translation project on transifex.com and would be happy if some people would join and help.

The PyScripter IDE, which is written in Delphi is looking for translators. We have set up a translation project on transifex.com and would be happy if some people would join and help. Translation project: https://www.transifex.com/luebbe/pyscripter/ Github: https://github.com/pyscripter/pyscripter Cheers and thanks https://www.transifex.com/luebbe/pyscripter/

Hi everyone

Hi everyone, I am writing object classes to describe aspects of patients in a healthcare app and am bogged down in writing the database connectivity to Firebird. Lots of lines of code getting and setting data to and from class fields and database fields. I want to automate this. Of course the solution is to use an ORM or even MORMOT but that's a whole new learning curve (especially MORMOT) and I want to minimise 3rd party components, and also maintain compatability with Lazarus (I know MORMOT and TMS Aurelius work on Lazarus too). Third party components make for Delphi upgrade hell. So prefer and would be happy with generic plain code, in this case to just automatically parse a class's fields, and then database table’s fields and with a given stringlist of associated field names then shift the data in one direction or the other. Adding or removing fields to the class and database would just require adding or removing the field names from the stringlist. Has anyone do

Delphi 10.2.2 Update 2

Image
Delphi 10.2.2 Update 2 I switched off "Dark Mode", however I can't seem to get the IDE's toolbar to reset. Perhaps I'm missing an option or something, but I don't see much. Anyone else run into this? Is there a global reset for colors/themes? Tools -> Options -> Theme Manager I currently have Enable=TRUE, Light with Defaults

Originally shared by Jeroen Wiert Pluimers

Originally shared by Jeroen Wiert Pluimers Finally managed to trim down a circular uses reference down so the unit that pulls most stuff in now compiles in ~10 seconds instead of a few minutes. The Delphi IDE now also crashes less often.

Another episode of the Delphi podcast -- live! Starts in ten minutes, tune in.

Another episode of the Delphi podcast -- live! Starts in ten minutes, tune in. https://www.youtube.com/watch?v=_a4jM938_9U https://www.youtube.com/watch?v=_a4jM938_9U
Every delphi shop I've worked at has started unit file names with a "U". Am I imagining this? If so, what purpose does the U serve? I know class names begin with T, so the logic is the Unit names for the class start with a U?

TMS Component pack v8.8.5.0 : update Jan 23, 2018

Image
TMS Component pack v8.8.5.0 : update Jan 23, 2018 Our VCL UI controls bundle with over 400 components

I've found another TMemo rendering oddity that I wonder if anyone had come across before, or could help with?

I've found another TMemo rendering oddity that I wonder if anyone had come across before, or could help with? I've had a user report of a bug where Arabic characters aren't showing in a TMemo set to ControlType = "styled". Before it's mentioned, I know that Firemonkey doesn't support R-to-L rendering and I'm not looking for that (yet), plus for other reasons, I need to use the Styled memo rather than the Platform one so that's unfortunately not an option either. A quick way to reproduce is of you put a few Arabic characters into a TMemo at design time and run it on iOS it renders them as spaces. It renders fine on Android and Windows but not iOS. I've been debugging and tracked it down to a display issue when rendering the glyph for the characters within FMX.FontGlyphs.iOS.pas. The internal data structures store the correct character to be rendered but its as if the glyph bitmaps for late unicode characters (1333 in this case) aren't correc

FmxLinux 1.18 just released. Now it supports CentOS 7. $100 off for personal life time license till end of January.

Image
FmxLinux 1.18 just released. Now it supports CentOS 7. $100 off for personal life time license till end of January. http://www.fmxlinux.com

Question: I run a Delphi application from the IDE (Run without Debugging) and then run it by by clicking the executable from Win Explorer. There is consistently, a 25% difference (10 Mbs) in the memory reported in the Task Manager. Any idea what might explain this difference? (no run parameters specified in Delphi).

Question: I run a Delphi application from the IDE (Run without Debugging) and then run it by by clicking the executable from Win Explorer. There is consistently, a 25% difference (10 Mbs) in the memory reported in the Task Manager. Any idea what might explain this difference? (no run parameters specified in Delphi). And an observation. VS code with just a couple of small text files loaded has roughly the same memory footprint as the Delphi IDE with a large project addines etc. loaded!

Has anyone come across this issue and know of a fix or workaround?

Has anyone come across this issue and know of a fix or workaround? If I drop a TMemo onto an FMX project form and run on iOS, it works fine except using the cursor keys on my iPad hardware keyboard. I've had a few reports of this from users with other hardware keyboard types too. https://quality.embarcadero.com/browse/RSP-16066 Changing Memo.ControlType to Platform (rather than Styled) fixes this issue but introduces a number of other problems for my users so I need to stay on the Styled control in this case. I've debugged and noticed that [UIKeyboardImpl handleKeyEvent:executionContext] is triggered but this is next dispatched to Delphi, and none of the internally accessible Delphi library methods are called. It's fine on Android and Windows. I can't seem to get any further than this so wonder if anyone could offer advice how I might be able to work around this aside from switching to Platform styling?

Today, I won experience!

Image
Today, I won experience! If you never are wrong, you never have​ different experiences. Today, after, few minutes of doubt, I decided REVERT the last task. About 4 hours of job. But I'm happy because I have more expertise. I'm going now to take a break and when I return, I will redo this task. This time better of course.

Nice example of anon methods for functional programming. I created these methods as part of something I'm working on, and I thought I'd post here for the person arguing in another post that he couldn't really see the value in them. Personally, I think this is really cool!

Nice example of anon methods for functional programming. I created these methods as part of something I'm working on, and I thought I'd post here for the person arguing in another post that he couldn't really see the value in them. Personally, I think this is really cool! You don't need to know the details of this first function, just see how the others use it. Note that TProc is pre-defined in one of Delphi's units. Other than that, nothing else needs to be defined to make this code work. It's all right here. (I mean, aside from the things that are in the class...) //======================================================== procedure TAPU.DoForAllTracks( aProc : TProc ); var att : TAudioTrackType; // TAudioTrackType is an enum chan : TPlayerChannel; // AudioTrack is a var in the class defined as: // AudioTrack : array [TAudioTrackType] of TPlayerChannel; begin for tt := Low(TAudioTrackType) to High(TAudioTrackType) do begin chan := AudioTrack[

OmniThreadLibrary book is 99% finished. Now I'm looking for a native-speaking proofreader. I need somebody to go through the book, fix my bad statements etc.

OmniThreadLibrary book is 99% finished. Now I'm looking for a native-speaking proofreader. I need somebody to go through the book, fix my bad statements etc. If you know somebody who does such work, can you get me in contact, please? I'm paying, of course, and I understand that such work is not done for a fiver. https://leanpub.com/omnithreadlibrary

Does anyone know if there is any API translation or components library for ETW Event Tracing for Windows?

Does anyone know if there is any API translation or components library for ETW Event Tracing for Windows? Thanks

What do you utilize for maintaining consistency of Delphi dev environments across a dev team?

What do you utilize for maintaining consistency of Delphi dev environments across a dev team? It sure seems like it would be nice to use Vagrant and simply make a copy of a pre-built template...
What do you utilize for maintaining consistency of Delphi dev environments across a dev team? It sure seems like it would be nice to use Vagrant and simply make a copy of a pre-built template...

We kick off a week of MVVM with an introduction of the Model-View-ViewModel pattern and how data binding is used to realize it.

We kick off a week of MVVM with an introduction of the Model-View-ViewModel pattern and how data binding is used to realize it. https://blog.grijjy.com/2018/01/22/mvvm-starter-kit-part-1-of-3/

Why does Delphi complain about deprecating a setter method, but not other methods. I'm using XE3, and Delphi doesn't support deprecating a property, so I thought I would deprecate the setter method. But Delphi doesn't like that either. It is perfectly happy with the "Procedure Text;" as deprecated though???

Why does Delphi complain about deprecating a setter method, but not other methods. I'm using XE3, and Delphi doesn't support deprecating a property, so I thought I would deprecate the setter method. But Delphi doesn't like that either. It is perfectly happy with the "Procedure Text;" as deprecated though??? TtiIntegerListItem = class(TtiBaseObject) private FValue: Int64; // fails to compile procedure SetValue(const Value: Int64); deprecated 'The AValue property is deprecated. Please use the Value property instead.'; // this one is accepted though procedure Text; deprecated 'use Value() instead'; public constructor CreateCustom(AValue: Int64); property AValue: Int64 Read FValue Write SetValue; // Delphi doesn't support deprecated here like FPC does. property Value: Int64 Read FValue Write FValue; end;

TMemIniFile is unbelievably wasteful. See https://quality.embarcadero.com/browse/RSP-19803

TMemIniFile is unbelievably wasteful. See https://quality.embarcadero.com/browse/RSP-19803 https://quality.embarcadero.com/browse/RSP-19803

Frames in 10.2.2

Frames in 10.2.2 Hi Has anyone else had issues with frames under 10.2.2? The project seems to have lost its links to the frames? If I went to the Tool Palette/Standard/Frames I received a message saying there were no frames in the project. I had to remove then re-add them (and get the order correct grrr) in order to get the project working properly again. Vince

I've got a couple of issues with GetIt in Tokyo 10.2.2 (2004)

I've got a couple of issues with GetIt in Tokyo 10.2.2 (2004) I installed CodeSite Express, but it didn't set up a path anywhere to find the files. I put this into the global Library Path, but it's not working: C:\Program Files (x86)\Raize\CS5\Lib\RX10.2\$(Platform) EDIT: I just noticed it's already there with \win32 instead of \$(Platform), but it still isn't finding the units. EDIT: well, after a couple of full builds, the compiler figured it out. Never mind. Second, the BeyondCompare IDE addin is still not working. I thought it was fixed. As an aside, I've got a license for BC4. Does this come with something that can be installed into the IDE? Or is the IDE addin just something they put out for use with Delphi?

Hello people, I have probably a similar problem. Has anyone know how to resolve the problem?

Hello people, I have probably a similar problem. Has anyone know how to resolve the problem? My Delphi is Enterprise - Berlin The event (into the Delphi COM server) has string parameters and if the event is triggered with blank string values (empty strings '')(all or some of them), it will not be fired in C# program because an exception is raised. The raised exception message is: Invalid pointer. but... There no such problem if the clients application is a Delphi application. The Delphi client application works perfectly. If the string parameter has only one character also, the event will be fired into the C# application without an exception. Any ideas? :( https://stackoverflow.com/questions/22675815/com-event-not-triggered-in-c-sharp-for-delphi-com-objects-with-empty-values-in-s

Castle Game Engine 6.4 was just released! It's an open-source cross-platform (desktop, mobile) 3D and 2D game engine using modern Object Pascal.

Castle Game Engine 6.4 was just released! It's an open-source cross-platform (desktop, mobile) 3D and 2D game engine using modern Object Pascal. It is NOT yet compatible with Delphi (only FPC / Lazarus for now). But I'm posting about it here, because I'm working on making it comptible with Delphi in the next release. In this engine version (6.4), base units already compile with Delphi (although nothing visual yet, only console tests), and our new vectors API is Delphi-compatible (using advanced records), and we use Delphi-compatible Generics.Collections throughout the engine. I want to achieve full Delphi compatibility with the next release (6.6). I hope you find this information interesting for Delphi users:) https://castle-engine.sourceforge.io/wp/2018/01/21/castle-game-engine-6-4-release-physics-ios-services-shader-pipeline-upgrade-big-api-improvements-vectors-transform-and-more/ https://castle-engine.sourceforge.io/wp/2018/01/21/castle-game-engine-6-4-release-physics-io

Does anybody know if Emb is planning to add InApp Subscriptions support? All I can find is a small statement in their online documentation stating that this is not yet supported.

Does anybody know if Emb is planning to add InApp Subscriptions support? All I can find is a small statement in their online documentation stating that this is not yet supported. I’ve searched the Internet hoping that someone may have tried to implement this themselves but no luck so far. This is the final piece of the jigsaw I’m missing to complete my current project. Anybody have any experience with this? Thanks!

I was wondering if someone could write a tutorial on how to create custom ui components such as buttons, tabs etc.

I was wondering if someone could write a tutorial on how to create custom ui components such as buttons, tabs etc. Something I would pay for if it was available.

RAD Studio Welcome Screen

RAD Studio Welcome Screen http://www.davidghoyle.co.uk/WordPress/?p=1882 http://www.davidghoyle.co.uk/WordPress/?p=1882

Compiling Component Packages for C++

Compiling Component Packages for C++ http://www.davidghoyle.co.uk/WordPress/?p=1879 http://www.davidghoyle.co.uk/WordPress/?p=1879
Is there a keyboard shortcut to go to the next compiler error in the current source file?
Anyone know of a Delphi component or tool that allows creation of PowerPoint files without going through PowerPoint itself? In other words, native PowerPoint creation? Or even the OpenOffice equivalent, which can be opened in PowerPoint? I see things to display them and I know it can be done with COM, but I've run into issues with COM when the user already is working on their own PowerPoint concurrently.

Don't repeat yourself!

Don't repeat yourself! TCollectionNotification is declared twice. One resides in System.Classes and another one in System.Generics.Collections. https://quality.embarcadero.com/browse/RSP-19791 https://quality.embarcadero.com/browse/RSP-19791

Bummer, cannot save a Delphi desktop named "Default Layout - right 3/4" - at load this one seems to be restored, but...

Bummer, cannot save a Delphi desktop named "Default Layout - right 3/4" - at load this one seems to be restored, but the list does not contain that entry.
Bummer, cannot save a Delphi desktop named "Default Layout - right 3/4" - at load this one seems to be restored, but the list does not contain that entry.

Does anyone know what I've done.... I had a system crash where my C.P.U. went 100% and my pudgy fingers must have keyed something wrong; now I have a fat bar at the top of my editor and two buttons I never had before ( circled in Yellow ). Can anyone tell me what this is?

Image
Does anyone know what I've done.... I had a system crash where my C.P.U. went 100% and my pudgy fingers must have keyed something wrong; now I have a fat bar at the top of my editor and two buttons I never had before ( circled in Yellow ). Can anyone tell me what this is? Thanks

Is the Delphi forums in trouble again?

Is the Delphi forums in trouble again? Getting java.lang.NullPointerException https://forums.embarcadero.com/category.jspa?categoryID=12 https://forums.embarcadero.com/category.jspa?categoryID=12

Hi Guys, i need help with tidHttpServer and Sessions.

Hi Guys, i need help with tidHttpServer and Sessions. I do nothing special. The tidHttpServer in an Windows VCL App is working very good. I work with sessions and let the httpserver do everything session-related with autocreate and sessionstate set to true. Accessing the site over Ie, Chrome or Firefox from Desktop is working but if i access the site over android + chrome from my mobile phone, i get a new session-id each time i open the site or do a refresh or open a new url ... Meanwhile i have done a lot of tests but i can't find the bug in my code ... there is nothing special. Does someone has also an webserver with tidhttpserver on tokyo 10.2.2 + sessions working? Possible to test the site over android handy?
I'm using Delphi XE3. When I compile projects with FPC, the FPC compilers lists the files that it compiles (new or recompiled units). When I compile projects with Delphi XE3 the Messages window only shows the dcc command line string that is use and "Success" at the end. Is there a way to let it show me what files in found that needed to be recompiled - so I can be certain it picked up what it needed to.

Nice simple bug in 10.2.2

Nice simple bug in 10.2.2 Right click on a folder node in Project Manager, select "Show in Explorer", precisely nothing happens. Right click on a file, and the Folder containing the file opens. Works OK on 10.1

A new version of Petra released with support for Sketch Symbols, better Artboards processing, ​and minor fixes.

Image
A new version of Petra released with support for Sketch Symbols, better Artboards processing, ​and minor fixes. www.applyingcode.com

I find it so sad that Borland/CodeGear/Embarcadero people can't fix one liner that I first reported for D4 >:-(

I find it so sad that Borland/CodeGear/Embarcadero people can't fix one liner that I first reported for D4 >:-( http://www.17slon.com/blogs/gabr/TDM/tdm44-gp.pdf No idea what happened with the original bug report, probably got lost at some database transition or somebody marked it "works as designed". Dejan Crnila ran into the same issue last year and proposed the same solution as I did 18 years ago. https://quality.embarcadero.com/browse/RSP-19360 This bug is so old that it can vote in most (all?) European countries. Please vote on the issue. Thanks. http://quality.embarcadero.com/browse/RSP-19360
What are the size restrictions for the VCL controls like TPanel and TPaintBox.? Are they documented anywhere? I'm talking about placing these on a TScrollBox, so the screen size is not a limit. The maximum width of a TPanel on my computer seems to be 2^15 pixels, but I couldn't find any documentation on it, so it might even depend on the Windows version or the graphics driver.

Originally shared by Boian Mitov

Originally shared by Boian Mitov My 6th "Video Processing with Delphi (Video Render video over different 2D and 3D surfaces, and elements)" article has just been published in the "Blaise Pascal Magazine" :-) #Delphi #OpenWire

Hi, Need Help regarding Datasnap Jason method

Hi, Need Help regarding Datasnap Jason method I have generated in following format: { "result":[{"ResCode":"100","ResMsg":"Success","Response":{"EmpNo":"010003","Salary":200000}}] } But need to generate in following format: { "ResCode":"100","ResMsg":"Success", "result":[{"EmpNo ":"010003","Salary ":"200000"}] } How to generate it? Thanking you all in advance...

I'm creating my first class - it will be handling 'running of selected action/s' and action will run is based on 100s of options.

Image
I'm creating my first class - it will be handling 'running of selected action/s' and action will run is based on 100s of options. I have around 300 actions/options grouped in 20 categories. So, I was thinking of having 20x overloaded procedures that will accept different parameters - that control running actions. Because of so many options, I was thinking of creating enums and have them as input parameters - this way I will be able to see in code completion/insight what kind of parameters I need to use to control running specific action. I hope this simple example shows what I' working on: // example of categories and actions TSuperActions = (saNone, saSuperProject, saSuperGroup, saSuperSubGroup); TMajorActions = (maNone, maClearData, maDeletAllData, maRepairData); TMinorActions = (miNone, miDeleteRecords, miPrepareInfo, miPrepareForExport); RunActions = class ... public ... procedure RunAction(aProjectID: integer; aSuperAction: TSuperActions = saNone); overload; proced

Blog post "HTTP Protocol Related Improvements in Delphi 10.2.2 " at http://blog.marcocantu.com/blog/2018-january-http-improvements-1022.html

Blog post "HTTP Protocol Related Improvements in Delphi 10.2.2 " at http://blog.marcocantu.com/blog/2018-january-http-improvements-1022.html

Playing with my TGraphicPanel (a parented TGraphicControl) I've think about a feature that could be nice to have,...

Image
Playing with my TGraphicPanel (a parented TGraphicControl) I've think about a feature that could be nice to have, an AlignWeight property to priorise controls alignments. The concept is simple, by default, a value of 0 do not change the behavior. If the AligWeigth of a component is higher, then it is aligned first. It can also define the align order of a set of "alLeft" components regardless of it's actual position.

Playing with my TGraphicPanel (a parented TGraphicControl) I've think about a feature that could be nice to have, an AlignWeight property to priorise controls alignments.

Image
Playing with my TGraphicPanel (a parented TGraphicControl) I've think about a feature that could be nice to have, an AlignWeight property to priorise controls alignments. The concept is simple, by default, a value of 0 do not change the behavior. If the AligWeigth of a component is higher, then it is aligned first. It can also define the align order of a set of "alLeft" components regardless of it's actual position.

This shows the great potential of this sector!

This shows the great potential of this sector! https://3dprintingindustry.com/news/apple-full-color-3d-patent-127565/

Fellow Delphi Developers

Image
Fellow Delphi Developers, We continue to improve our High-DPI demos for StyleContols VCL. Now you can see our updated Ribbon Analogue demo with new VCL Style "Windows10 Clear Day" from DelphiStyles.com. Demo uses: 1. TscToolPager control (ribbon analogue control) with different controls from the package. You can set TabsLeftOffset, TabsRightOffset and put any controls from left and right in tabs area. 2. TscStyledForm component to add buttons in form caption + improved styled form. 3. TscGPImageCollection and TscGPVirtualImageList components for all images in cotnrols and forms. With these components you get HQ scalable images in controls. 4. Custom dropdown form with TscAppPager control as application menu. You can create any custom form as dropdown window and link it to the TscButton control. StyleControls VCL Home: http://www.almdev.com

Tip: Use Ctrl+W to select content in the IDE code editor.

Tip: Use Ctrl+W to select content in the IDE code editor. Place your cursor some random piece of code, preferably deep in code that have nested blocks. Press Ctrl+W. Repeat, and repeat while watching the goodness progress. This tidbit was shared by Jim Mack in a comment in the FB Delphi group. Edit: The feature was introduced in Berlin 10.1 The feature struggles with Unicode characters in code and strings. Those of you that use national characters in your strings or code (such as Cyrillic, Greek, or Chinese) that also misbehaves, should add a comment / example to the QP issue and vote on it. https://quality.embarcadero.com/browse/RSP-19787

Hi there! We release hotfix for PostgresDAC. Update your environment if you were affected ASAP!

Image
Hi there! We release hotfix for PostgresDAC. Update your environment if you were affected ASAP! http://microolap.com/products/connectivity/postgresdac/news/detail.php?ID=1839

Title

Image

We are live now with the Podcast at Delphi org on YouTube http://embt.co/2B5NmWR

Originally shared by Jim McKeeth We are live now with the Podcast at Delphi org on YouTube http://embt.co/2B5NmWR http://embt.co/2B5NmWR

Originally shared by Jim McKeeth

Originally shared by Jim McKeeth We are live now with the Podcast at Delphi org on YouTube http://embt.co/2B5NmWR http://embt.co/2B5NmWR

Looking for some simple answers to what may not be simple questions.

Looking for some simple answers to what may not be simple questions. Hoping to use DevExpress grid export for Excel, and the DevExpress Printing System for PDF. Been exploring the demos, and also on youtube, but I need to know, on the Printing System, can it help me if I need data in the report from multiple grids? And from other sources? In particular, I must present a standardized page header and footer, and in some cases, formatted data from multiple grids. We have been using ReportBuilder for this, but it is difficult on that path to exploit advanced features of the DevExpress Quantum Grids.

Optimizing ARC with unsafe references

http://dalijap.blogspot.com/2018/01/optimizing-arc-with-unsafe-references.html

After my windows 10 update I lost Delphi Tokyo license. The LicenseManager.exe stucks on memory so Delphi won't load.

After my windows 10 update I lost Delphi Tokyo license. The LicenseManager.exe stucks on memory so Delphi won't load. I had a full uninstall but no success. When I click on "I already have a product serial number" the installer don't allow me to click on "Next" button, only if I close it and go for "I have a trial ..." something like :(

Fellow Delphi developers

Image
Fellow Delphi developers, This is with great pleasure that we announce the immediate availability of HelpNDoc 5.5, an easy to use yet powerful help authoring tool producing CHM help files, responsive HTML 5 and mobile Web Sites, 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 HelpNDoc 5.5 provides many new features and enhancements including a project-wide spell checker, enhanced user interface and documentation generation and much more... You can learn more about this update at: https://www.helpndoc.com/news/2018-01-16-documentation-wide-spell-checker-and-user-interface-improvements-helpndoc-55 Download HelpNDoc now and use it for free for personal and evaluation purposes: https://www.helpndoc.com/download Follow our step-by-step video guides to learn how to use HelpNDoc: https://youtu.be/u1XVAR985g8?list=PLe52dEok5gAlrGpJ9IxdFEfVrCjTucOhF

The new GDI scaling introduced in Windows 10 Creators update is quite amazing. (https://blogs.windows.com/buildingapps/2017/04/04/high-dpi-scaling-improvements-desktop-applications-windows-10-creators-update/). Just try it on the Delphi IDE if you work on a High DPI monitor and enjoy the difference. You need to right-click on the executable or the shortcut, select Properties and under compatibility check "Override high DPI scaling behavior" and select System (Enhanced). You can also make your DPI unaware Delphi apps to use GDI scaling by default by adding a custom manifest that includes the following:

The new GDI scaling introduced in Windows 10 Creators update is quite amazing. ( https://blogs.windows.com/buildingapps/2017/04/04/high-dpi-scaling-improvements-desktop-applications-windows-10-creators-update/ ). Just try it on the Delphi IDE if you work on a High DPI monitor and enjoy the difference. You need to right-click on the executable or the shortcut, select Properties and under compatibility check "Override high DPI scaling behavior" and select System (Enhanced). You can also make your DPI unaware Delphi apps to use GDI scaling by default by adding a custom manifest that includes the following: http://schemas.microsoft.com/SMI/2017/WindowsSettings "> true It is almost as good as DPI awareness without the conversion effort. https://blogs.windows.com/buildingapps/2017/04/04/high-dpi-scaling-improvements-desktop-applications-windows-10-creators-update/

Hi all

Hi all, is receiving multipart/formdata (+file uploads) with Tokyo + Indy-tidHttpServer simplier than in past? Has someone a working "Upload Image to idHttpServer" demo? In 2014 indy had no automatic decode for that, possible that something has changed and now indy can decode?

We have a hotfix for 10.

We have a hotfix for 10.2.2 addressing issues with the Welcome Page and Documentation tabs. If you've found issues here, download and apply it! https://community.embarcadero.com/blogs/entry/10-2-2-welcome-page-and-documentation-hotfix https://community.embarcadero.com/blogs/entry/10-2-2-welcome-page-and-documentation-hotfix

We have a hotfix for 10.2.2 addressing issues with the Welcome Page and Documentation tabs. If you've found issues here, download and apply it!

We have a hotfix for 10.2.2 addressing issues with the Welcome Page and Documentation tabs. If you've found issues here, download and apply it! https://community.embarcadero.com/blogs/entry/10-2-2-welcome-page-and-documentation-hotfix https://community.embarcadero.com/blogs/entry/10-2-2-welcome-page-and-documentation-hotfix

Originally shared by TRichView

Originally shared by TRichView We uploaded a new beta version of #RVMedia 5.3 #VCL components: http://www.trichview.com/forums/viewtopic.php?f=6&t=9014 It is stable, but only for #Delphi and C++Builder (Lazarus and Linux compatibility is not restored yet). Main changes: - video and audio recording (using new TRVCamRecorder and TRVAudioPlayer components) with use of #FFmpeg - playing sounds on the specified audio device (TRVAudioPlayer components) - ability to have more than one video and audio sources in each client of TRVMediaServer - much better processing of sound received by TRVCamReceiver - support for new FFmpeg version - new video mode for TRVCamera: using user-supplied images as video frames Additional information about these and othere new features can be found in the help file.