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,862 other subscribers

Archive for 2011

Just uploaded by BASTA.NET conference session materials on .NET Cross Platform Mobile Development on Windows 7, Android and iOS

Posted by jpluimers on 2011/09/27

This morning I gave a well attended session at the BASTA.NET conference on .NET Cross Platform Mobile Development on Windows 7, Android and iOS

If you were attending my session, or just interested in Cross Platform Development with a touch – pun intended – of .NET (and Mono, MonoTouch, MonoDroid, MonoMac, Xcode) then you can download the materials here: http://bo.codeplex.com/SourceControl/changeset/changes/70132 and http://bo.codeplex.com/SourceControl/changeset/changes/70133 (yes, 2 change sets: somehow with SVN  “Check for modifications” I still missed part of the batch).

It consists of the PDF with session slides and the demo apps based on an old (.NET 1.1 and .NET Compact Framework 1.0 era) C# tic tac toe demo (which was based on some Turbo Pascal sources from 20+ years ago), now revived for the Windows Phone 7 (with Visual Studio), iOS (with MonoTouch) and Android (with MonoDroid) platforms.

The conference is held at the beautifully designed Rheingoldhalle conference center adjacent to the Rhine (German: Rhein) river in Mainz, Germany.

Oh: and I enjoyed a bit of the great weather outside (while it lasts <g>).

–jeroen

Posted in .NET, BASTA!, C#, Conferences, Development, Event, Software Development | Leave a Comment »

Delphi Spring, Mocks and how to use them: some links

Posted by jpluimers on 2011/09/27

Now that there is Spring and Mocks for Delphi, it is time to post a few links:

Hope you enjoy them as much as I do!

–jeroen

Posted in Delphi, Development, Software Development | 3 Comments »

A few more classics on BitSavers in the /pdf/borland tree

Posted by jpluimers on 2011/09/27

Hope you like these classics from the early Borland era:

Oh, and if you – like me – started in the Apple ][ and Lisa era, there are lots of nice documents of Apple products from that period to, for instance:

–jeroen

Via: Index of /pdf/borland.

Posted in BitSavers.org, Delphi, Development, History, Software Development | 5 Comments »

Android 101: How to add a second gmail account to your phone | Android Central

Posted by jpluimers on 2011/09/26

Or third, fourth, …

Android 101: How to add a second gmail account to your phone | Android Central.

–jeroen

Posted in Android Devices, LifeHacker, Power User | Leave a Comment »

SMS via de vaste aansluiting – Afwijkend nummer SMS-berichtencentrale

Posted by jpluimers on 2011/09/26

Als je SMS berichten via het vaste net van KPN wilt versturen, moet je een SMS Service Center installen.

Meestal moet je daarvoor het nummer 0673644444 hebben, maar soms moet er een nul achter en wordt het 06736444440, en soms (in ieder geval bij KPN Glasvezel) moet er 0031 voor en wordt het 0031673644444.

Gelukkig had de nieuwe Siemens Gigaset DX600A ISDN genoeg aan het normale nummer 0673644444.

–jeroen

via SMS via de vaste aansluiting – Afwijkend nummer SMS-berichtencentrale.

Posted in Power User | Leave a Comment »

#abnamro #fail while reporting fishing mail, no past ABN AMRO email address works (nor does abuse@abnamro.com or .nl)

Posted by jpluimers on 2011/09/25

ABN AMRO should get their act together: I tried to notify them about some fishing email messages that fake they are coming from them (but instead try to lure me into providing my ABN AMRO credentials to a fishing site).

All of the mail addresses I used to communicate with ABN AMRO in the (recent!) past failed to work.

And since both abuse@abnamro.com or abuse@abnamro.nl also bounce, ABN AMRO now seem to want to  live in complete cyber oblivion.

I hope some people at ABN AMRO read this and take action.

Or maybe they like to loose clients?

–jeroen

Edit: gelukkig, op Twitter let de ABN AMRO wel op: https://twitter.com/#!/ABNAMRO/status/117939672268812288&#8243; target=”_blank”>Gijs reageerde, waarvoor dank:

@jpluimers Hallo Jeroen. Je kunt de phishing e-mails sturen naar valse-email@nl.abnamro.com of service@nl.abnamro.com. ^Gijs

Posted in About, Opinions, Personal | Leave a Comment »

DNSCheck

Posted by jpluimers on 2011/09/23

Cool stuff:

About DNSCheck

Use this DNScheck to perform a technical check on a registered or as yet unregistered (undelegated) domain.

The result page gives details of any problems detected.

For yet undelegated domainnames, you need to enter the the host names and the IP-addresses of the name servers. Choose the ‘undelegated domain test’ tab for this.

About SIDN

SIDN is responsible for the functional stability and development of the .nl ccTLD domain. As well as registering and allocating .nl domain names, the organisation enables Internet users all over the world to make use of these labels at any given moment by means of the Domain Name System (DNS).

–jeroen

via: DNSCheck.

Posted in Power User | Leave a Comment »

Windows “Device Manager” – expand all nodes

Posted by jpluimers on 2011/09/23

 

Expanded Windows Device Manager

 

With the increasing number of devices, it really helps to expand all nodes in the Device Manager’s tree view.

You cannot do this with the mouse, as none of the menu options contain an “Expand All” option.

But since the treeview, is the built-in Windows treeview (used in many places, like Windows explorer), you can use these shortcuts to expand/collapse nodes:

  • Numeric Keypad *: Expands everything under the current selection
  • Numeric Keypad +: Expands the current selection
  • Numeric Keypad -: Collapses the current selection.
  • RIGHT ARROW: Expands the current selection if it is not expanded, otherwise goes to the first child
  • LEFT ARROW: Collapses the current selection if it is expanded, otherwise goes to the parent

This not only works in Microsoft Windows 7: Visual … – Google Books, I think it has been introduced as far back as Windows 95.

–jeroen

Posted in Keyboards and Keyboard Shortcuts, Power User, Windows, Windows 10, Windows 7, Windows 8, Windows 8.1, Windows 9, Windows Server 2003, Windows Server 2003 R2, Windows Server 2008, Windows Server 2008 R2, Windows Server 2012, Windows Server 2012 R2, Windows Vista, Windows XP | 1 Comment »

C# Using Blocks can Swallow Exceptions | DigitallyCreated

Posted by jpluimers on 2011/09/22

I got to the SafeUsingBlock extension method because of a nice StackOverflow thread on exceptions swallowed in a using block.

Actually, you can broaden the case into a wider scope: in any language when you protect resources in a try finally block (essentially, a using will turn into an implicit try finally block), and both the core logic and the finally throw an exception, the exception from the core block is swallowed.

Simple C# example:

using System;
public class Example
{
    public void Main()
    {
        try
        {
                try
                {
                    throw new ApplicationException("logic block");
                }
                finally
                {
                    throw new ApplicationException("finally block");
                }
        }
        catch (Exception error)
        {
            Console.WriteLine(error.ToString());
        }
    }
}

Simple Delphi example:

program Example;
begin
  try
    try
      raise Exception.Create('logic block');
    finally
      raise Exception.Create('finally block');
    end;
  except
    on error: Exception do
    begin
      Write(error.ClassName, ' ', error.Message);
    end;
  end;
end.

Both examples will only write out the finally block exception message, not the logic block exception message.

This is a corner case (like the example from the MSDN documentation), from which the SafeUsingBlock protects you from by providing an AggregateException class.

In C#, it is a guideline to avoid throwing exceptions in the Dispose when implementing the disposable pattern.

This is good practice in any programming environment: when disposing objects, only throw exceptions in very critical situations when the containing process has been corrupted.

Practically this is very easy as the disposers are very thin and should not contain any business logic, so it is pretty easy to spot places where the program state really is corrupt.

An other alternative is for instance have a Close method that throws an exception, and a disposer not throwing.

–jeroen

via C# Using Blocks can Swallow Exceptions | DigitallyCreated.

Posted in .NET, C#, Delphi, Development, Software Development | 7 Comments »

MQCONNX 2058 (080A) (RC2058): MQRC_Q_MGR_NAME_ERROR

Posted by jpluimers on 2011/09/21

Solved a “2058 (080A) (RC2058): MQRC_Q_MGR_NAME_ERROR” error when calling MQCONNX; My bad.

I forgot that both the Queue Manager name must be passed both as the pQMgrName parameter and as the ClientConnPtr (MQCD).QMgrName of the ConnectOpts (MQCNO) parameter to MQCONNX.

–jeroen

Posted in Development, MQ Message Queueing/Queuing, Software Development, WebSphere MQ | Leave a Comment »