The Wiert Corner – irregular stream of stuff

Jeroen W. Pluimers on .NET, C#, Delphi, databases, and personal interests

  • My badges

  • Twitter Updates

  • My Flickr Stream

  • Pages

  • All categories

  • Enter your email address to subscribe to this blog and receive notifications of new posts by email.

    Join 1,861 other subscribers

Archive for the ‘Delphi XE7’ Category

Delphi and Batch Files

Posted by jpluimers on 2014/11/06

Two interesting links today about Delphi and Batch files.

–jeroen

PS: If you want to see some serious Batch file and PowerShell related scripts, then read through the Build Automation part of my session materials I posted to ITDevCon and EKON session materials on Delphi Unit Testing + Build Automation and Continuous Integration on-line.

More details are in the batch files here:

and PowerShell scripts here:

Posted in Batch-Files, Delphi, Delphi 2005, Delphi 2006, Delphi 2007, Delphi 2009, Delphi 2010, Delphi 7, Delphi XE, Delphi XE2, Delphi XE3, Delphi XE4, Delphi XE5, Delphi XE6, Delphi XE7, Development, QC, Scripting, Software Development | 7 Comments »

Delphi; Conditional defines in the .dpr: FastMM4 disappearing – via: G+ I’ve got an old problem, in which the IDE…

Posted by jpluimers on 2014/11/05

Vin Colgin posted on G+:

The kind of text that the Delphi IDE often removes in a .dpr file.

The kind of text that the Delphi IDE often removes in a .dpr file.

FastMM4 and lines in the *.dpr

I’ve got an old problem, in which the IDE will take the lines required out of the “uses” clause in the *.dpr. Something I’m sure we’re all aware of, but is there a solution to keep it from doing it?

The comments indicate the problem is less severe in more recent Delphi versions:

Daniela Osterhagen Actually it has become much better. The IDE doesn’t meddle as much with the DPR files as it used to.

One option for solving this issue is adding a new unit as the first entry that permanently stays there and moving the ifdef to that unit.

That’s what I did a long time ago and even put on-line, and even put it on-line at CodePlex as FastMM4BootstrapUnit.pas (now moved to bitbucket as FastMM4BootstrapUnit.pas). Too bad CodePlex and BitBucket are not indexed on Google, so I commented this:

I’m using a FastMM4BootstrapUnit for that at the top of my DPR; it  looks like this […]

It will eventually end up at my BeSharp.net repository any way.Let me know if you need it there soon, and I can probably get something published after the Entwickler Konferenz next week.

So various people are now using this:

  • Vin Colgin:  very nice. Thanks for the tip!
  • Warren Postma: This works fine for me in xe6 and up.
  • Bruce McGee: Nice. May I steal this? And by “steal”, I mean giving credit in the code comments.

Since I could use this unit during my EKON 2014 talk about Delphi Unit Testing, I expedited the publication:

https://bitbucket.org/jeroenp/besharp.net/src/tip/Native/Delphi/Library/FastMM/FastMM4BootstrapUnit.pas

And explained the usage in this Unit testing session session materials.

Note: this file isn’t indexed either (as BitBucket doesn’t allow it), but since the repository will be git based in the foreseeable future anyway, I can then move it to GitHub which does allow Google to crawl the master branch.

–jeroen

via FastMM4 and lines in the *.dpr I’ve got an old problem, in which the IDE….

Posted in Delphi, Delphi 2005, Delphi 2006, Delphi 2007, Delphi 2009, Delphi 2010, Delphi 3, Delphi 4, Delphi 5, Delphi 6, Delphi 7, Delphi x64, Delphi XE, Delphi XE2, Delphi XE3, Delphi XE4, Delphi XE5, Delphi XE6, Delphi XE7, Development, Software Development | 5 Comments »

Delphi; Reminder to self: “Parallel Programming Library” in XE7 is the end result of “Delphi Parallel Library” by Allen Bauer

Posted by jpluimers on 2014/11/04

Like any long term project (Spring4D took [WayBack] about 5 years to release version 1.0 and still needs a lot of mobile polishing) the “Delphi Parallel Library” took a long time to complete.

It got incorporated as the “Parallel Programming Library” in Delphi XE7.

Since the documentation is thin (like Spring4D <g>), but the posts about “Delphi Parallel Library” (those started in 2008!) give a lot of background information.

Hence the reminder to self.

Now I need to compare this to the [WayBackOmni Thread Library for Delphi (which is on [WayBack] version 3+ now and moved to [WayBack] GitHub – gabr42/OmniThreadLibrary: A simple and powerful multithreading library for Delphi in the same release range) one day (:

(PPL is cross platform whereas OTL is not, but there must be much more differences).

–jeroen

Posted in Delphi, Delphi XE7, Development, Software Development | Leave a Comment »

Delphi, C#, VB.NET and SQL all have escapes to use reserved words as identifiers

Posted by jpluimers on 2014/11/04

Normally you would not want to use a reserved word as an identifier. But sometimes it can be very convenient, for instance for a code generator that wraps remoting calls or does ORM.

Both Delphi and C# have an escape for this:

The prefixes are to tell the compiler knows you really know what you are doing, and are using a reserved word as an identifier.

The cool thing: in the Run Time Type Information (Delphi) or Reflection (C# and VB.NET) you will see the names without the prefix.

Some examples from StackOverflow: Read the rest of this entry »

Posted in .NET, .NET 1.x, .NET 2.0, .NET 3.0, .NET 3.5, .NET 4.0, .NET 4.5, C#, C# 1.0, C# 2.0, C# 3.0, C# 4.0, C# 5.0, Conference Topics, Conferences, Delphi, Delphi 2005, Delphi 2006, Delphi 2007, Delphi 2009, Delphi 2010, Delphi 8, Delphi XE, Delphi XE2, Delphi XE3, Delphi XE4, Delphi XE5, Delphi XE6, Delphi XE7, Development, Event, Jon Skeet, Software Development, VB.NET, VB.NET 10.0, VB.NET 11.0, VB.NET 7.0, VB.NET 7.1, VB.NET 8.0, VB.NET 9.0 | Leave a Comment »

Why I dislike GoToWebinar by Citrix: 0 stars out of 5.

Posted by jpluimers on 2014/10/31

Last week, I viewed to webinars. A smaller one Geek Fest – Automating the ForgeRock Platform Installation about Ansible installation of Unix machines, and the first 70% of the last day ofCodeRage 9 | Free Development Event by Embarcadero.

Both had a bad experience because of GoToWebinar has a really bad user experience.

  1.  When a GoToWebinar connection terminates, the GoToWebinar client closes. You loose everything in the Q&A log. You need to hope someone else saved the Q&A log so you can see the public questions, but the private comments you made are gone.
  2. It is impossible to install the Windows client when you are behind a McAfee Web Gateway that filters downloads and HTTPS traffic. After trying for about 15 minutes, we gave up and reverted back to a Mac over another connection. It meant we could not use the conference room and had to cram many people behind a small MacBook screen.
  3. The Mac OS X client does not allow you to resise the Q&A log, so even on a 4k display, you can see like 10 lines of Q&A.
  4. When there are many attendees, the refresh rate slows down from sub second to once per 5-10 seconds, this is really bad when watching demos of software: a big aim of webinars.

When terminating, the only thing GoToWebinar allows you to do is give feed back (too bad they don’t allow for detailed feed back). So I gave it 0 out of 5 stars.

–jeroen

PS: I could save the below Q&A logs. If you have other logs, please let me know so I can publish them. I’m especially interested in Have You Embraced Your Inner Software Plumber Yet? by David Schwartz – The Tool Wiz

These are the  CodeRage 9 – Object Pascal Sessions I could save the Q&A log of:

Posted in Appmethod, Chrome, Delphi, Delphi XE7, Development, Firefox, Internet Explorer, Power User, Software Development, Web Browsers | Tagged: | 3 Comments »

CodeRage 9 Q&A: Creating Beautiful Animations in your Desktop and Mobile Applications (Boian Mitov)

Posted by jpluimers on 2014/10/30

Session:

Creating Beautiful Animations in your Desktop and Mobile Applications

The session demonstrates how to create beautiful timeline-based animations in Object Pascal using the Mitov Software’s AnimationLab.

Level: All
Boian Mitov – Mitov Software

Q&A:

Read the rest of this entry »

Posted in Appmethod, Delphi, Delphi XE7, Development, Software Development | 1 Comment »

CodeRage 9 Q&A: Advanced RTTI in Object Pascal (Ray Konopka)

Posted by jpluimers on 2014/10/30

Session:

Advanced RTTI in Object Pascal

Runtime Type Information RTTI has always been a core feature of Delphi. But until recently, it was complex and limited. Now, RTTI is significantly more powerful, and yet much easier to use as well. This session describes in detail all of the changes that have been made and demonstrates the new capabilities with several examples including field inspection, method invocation, and custom attributes.

Level: Intermediate
Ray Konopka – Raize Software

Q&A:

Read the rest of this entry »

Posted in Appmethod, Delphi, Delphi XE7, Development, Software Development | 1 Comment »

CodeRage 9 Q&A: Android Push Notifications (Jeff Lefebvre)

Posted by jpluimers on 2014/10/30

Downloads:

CodeRage 9 Files!

This year I presented Push notifications with Android. Here are the files mentioned in the session!

Session:

Android Push Notifications

Want to send push notifications to your clients or employees? This session goes over setting up GCM, installing push notifications into your application, and calling GCM to push those messages to your app.

Level: Intermediate
Jeff Lefebvre

Q&A:

Read the rest of this entry »

Posted in Android, Android Devices, Appmethod, Delphi, Delphi XE7, Development, Mobile Development, Power User, Software Development | Tagged: , | 4 Comments »

CodeRage 9 Q&A: Understanding Distributed Version Control (Robert Love)

Posted by jpluimers on 2014/10/30

Session:

Understanding Distributed Version Control

This session helps developers who have been working with a Centralized Version Control System such as SVN to understand and use Distributed Version Control such as GIT or Mercurial. This session focuses primarily on GIT, but applies to Mercurial. We also cover how to use GIT from the RAD Studio IDE.

Level: Beginning
Robert Love – State of Utah

Q&A:

Read the rest of this entry »

Posted in Appmethod, BitBucket, CVS, Delphi, Delphi XE6, Delphi XE7, Development, DVCS - Distributed Version Control, git, GitHub, Mercurial/Hg, Software Development, Source Code Management, SourceTree, Subversion/SVN, TFS (Team Foundation System) | 1 Comment »

CodeRage 9 Q&A: Bluetooth Classic and LE Programming with VCL and FMX (Diego Navarro)

Posted by jpluimers on 2014/10/30

Session:

Bluetooth Classic and LE Programming with VCL and FMX

Level: Intermediate
Diego Navarro – Embarcadero

Q&A:

Read the rest of this entry »

Posted in Appmethod, Delphi, Delphi XE7, Development, Software Development | 1 Comment »