Sunday, December 29, 2013

Refreshing or Rebuilding ShellIconCache

Here is a simple command line app to rebuild or refresh your Windows ShellIconCache. You can run it by just double clicking on it as it does not accept any command line parameters. Tiny Delphi source file is included.

Download RebuildShellIconCache.rar (50 KB)

Saturday, May 11, 2013

Sending email with attachments using C# and Gmail

Sending email with .Net is far simpler than it is in Delphi (using Indy).

Put the following in your classe's "using" section:
using System.Net.Mail;
using System.Net;

Include this method in your class

        private bool SendViaGmail()
        {
            try
            {
                var client = new SmtpClient("smtp.gmail.com", 587)
                {
                    Credentials = new NetworkCredential("myusername@gmail.com", "mypassword"),
                    EnableSsl = true
                };
                var msg = new MailMessage("myusername@gmail.com",
                    "mybuddy@example.com",
                    "Email subject",
                    "This is the email body...");
                msg.Attachments.Add(new Attachment("1.txt"));
                msg.Attachments.Add(new Attachment("2.jpg"));
                client.Send(msg);
                return true;
            }
            catch
            {
                return false;
            }
        }

Sending email with attachments using Delphi, Indy 10.5.5 and GMail

Sending email using Delphi is not difficult, you just need to know the carious bits and pieces that go together to make it happen. Over the years Indy has changed its classes and methods so your version of Indy might function slightly different to mine, Indy 10.5.5, its just the one that I have to hand right now. I'm also using Rad Studio 2010. To send email using GMail and Indy you'll need to download the Open SSL libraries. This is because GMail sensibly requires a secure connection while sending, and also receiving email.

You can download the Open SSL libraries here: http://www.openssl.org/related/binaries.html (32-bit builds only at time of writing). You need to place 2 of the files contained in the download (libeay32.dll, and ssleay32.dll) into your system's path or just place them into the same directory as the executable you are building/running. Now for the Delphi part.

Saturday, December 29, 2012

If its not a Google Nexus, it's already obsolete

It pisses me off that the only way to guarantee that you are running the latest version of Android is to own a device that Google designed and coached through the production process. Google do a great job, don' get me wrong. However if you use Samsung Galaxy S3 or HTC device, you have a really nice but out of date device experience. The crapware that manufacturers and carriers put in their Android devices (HTC Sense and Samsung overlay, as well as carrier alterations) slow down the process so much that it make stock Android the only feasible choice.

Saturday, July 21, 2012

Mobile OS Updates - Manufacturers gouging customers

I'm done with HTC, Samsung and Nokia. The seeming never ending wait for OS updates from device OEMs is a pain in the ass. In the last few years I've owned phones from all 3, and felt like a sucker when they announce that to get the latest OS you need to buy a new device. Fuck that.

The straw that brok the camels back is my Nokia Lumia 800. Microsoft pretty much called all owners of Lumia 800 and 900 handsets morons by announcing that Windows Phone 8 will not be released for them. Instantly making that product line a worthless zombie product line.

And as for buying an iPhone. Nah. I don't really feel like being laughed at by my phone maker. The only way to ensure a satisfactory update roadmap for your device and not be ripped off in the first place is by buying a Google Nexus phone. End of story.

Sunday, November 6, 2011

Microsoft's 1999 Homepage. Disingenuous Much?

Check out Microsoft's homepage from 1999 and Bill Gate's apparent concern with privacy and security. lol. The veritable orgy of ball-dropping since then defies belief but back then using the right business "e-speak" was all you needed to convince people you had things under control.

See also the link to the propaganda piece entitled "Microsoft and the freedom to innovate" along with the gavel symbolizing the DoJ's oppression. Freedom to innovate seemingly meant Windows ME, ActiveX, a web browser that was essentially an open telnet server. This of course was around the time Microsoft was being dragged through the courts in the US for being an anti-competitive monopoly. They eventually settled with the DoJ by offering to give free software licenses to schools and certain  non-profits, thereby further increasing their market share. Go figure.