Posts
All the articles I've posted.
-
SendMailControl for ASP.NET
Have you ever used the ASP.NET PasswordRecovery control, or the CreateUserWizard? Probably, you used the mail capabilities of these controls too, and set up a MailDefinition to send an e-mail when the control did his job. Personally, I missed this functionality when wanting to send mails to users. Luckily, ASP.NET is very extensible. I decided to create my own control providing an easy and convenient way to sending templated e-mails. Just set the From, CC, Subject and Body properties in the designer, and use the Send() method from code. Not the cleanest implementation of catching SMTP errors, but it was sufficient for my use. If you need to catch SMTP errors, you still need to add that... Anyway, as a gift for anyone who needs it, please find my SendMailControl underneath: [code:c#]
-
Excel, OpenXML and PHP
Yay! My new article on Excel, OpenXML and PHP has just been released in php|architect! A copy-paste action from http://www.phparch.com/issue.php?mid=102: "A few months ago, Microsoft released Office 2007, a version of their office suite that generates open source documents. Here, Maarten Balliauw gives an overview of the history and the politics surrounding the release before moving on to introduce his PHPExcel project, an early adoption of Microsoft's OpenXML API that enables Excel 2007 spreadsheets to be generated with PHP."
-
ASP.NET 2.0 Event Validation
Event Validation is a new feature in ASP.NET 2.0 which provides an additional level of checks on postback actions. It verifies whether a postback from a control on client-side is really from that control and not from a malicious person trying to break your application. Even if you forget to add security checks of your own, ASP.NET provides this functionality, because this feature is enabled by default. Sometimes, it is safe to turn this of, but Microsoft tries to have developers turn this of when they know what they are doing. Unfortunately: I came across Event Validation… A user control on a master page convinced ASP.NET that a postback within that same user control was unsafe, resulting in the following error:
-
Team Foundation Server tools linkdump
Currently, I'm playing around with TFS (Team Foundation Server), and here's just a quick linkdump of some TFS tools, mainly on CodePlex. http://msdn2.microsoft.com/en-us/vstudio/aa718351.aspx#cipphttp://www.codeplex.com/TFSAdminhttp://www.codeplex.com/automationhttp://www.codeplex.com/TFSCodeReviewFlowhttp://www.codeplex.com/tfsconsolehttp://www.codeplex.com/TfsPowerPack
-
Workaround for PHP file_exists on ZIP file contents
Recently, I was writing some PHP code, to check if a specific file existed in a ZIP file. PHP has this special feature called "stream wrappers", which basically is a system which enables PHP to do I/O operations on streams. A stream can be a file, a socket, a SSH connection, ... Each of these streams has its own wrapper, which serves as an adapter between PHP and the underlying resource. This enables PHP to do, for example, a file_get_contents() on all sorts of streams. Assuming regular PHP file functions would be sufficient, I coded the following: [code:c#] if (file_exists('zip://some_file.zip#readme.txt')) { ... } [/code]
-
Scalable Apps with Asynchronous Programming in ASP.NET
A while ago, I posted about the DevDays, and some interesting sessions I took. One of these sessions was "Scalable Apps with Asynchronous Programming in ASP.NET", by Jeff Prosise. Searching the Internet, I found that Jeff also published an article on this subject on MSDN, which can be found on the following URL: http://msdn.microsoft.com/msdnmag/issues/07/03/WickedCode/default.aspx.
-
Developer & IT Pro days - Ghent - Day 2
Just got back from the second and last day at the DevDays. It's all more exhausting than I thought it would be. First of all: driving from Antwerp to Ghent and arrive there in time means to get up early. Second, a lot of information and understanding needs to be processed and absorbed. Today, I've attended a session on C#3.0 and what's next by Raj Pai. Interesting material, seems to me that C# will evolve into something more declarative and flexible than it already is.
-
Developer & IT Pro Days - Ghent - Day 1
Day one of the Belgium Developer & IT Pro days is finished. I've been attending some inspiring sessions. First of all, Jelle Druyts showed us a quick overview of the Guidance Automation Toolkit. Interesting, and usable in many situations as standard Visual Studio templates do not always fulfill all your needs. Afterwards, Jeff Prosise spoke on using background threads in ASP.NET web sites, and how this can speed things up (a lot!). Another session was given by Doug Mahugh on OpenXML. Funny to notice my Prague co-developer also attended his session earlier this week.
-
Apache and IIS on same host, port 80, Windows XP
Yesterday, I decided to install an Apache web server on my development machine, next to IIS. Unfortunately, both use port 80, and I did not want to set one of the 2 servers to another port. Luckily, I remembered that IIS can be configured to only listen on one IP, and Apache on another. Easy: 2 IP addresses for my PC, and another server on each one.
-
New screen, Samsung is great!
Yesterday, I bought myself a Samsung SyncMaster 940BW wide screen TFT. My old screen, a IIyama 17 inch monster weighing CRT, needed a replacement. Not because of it's age, but because I really started hating this huge block on my desk. The SyncMaster is a great screen. Not the newest, not the most feature-loaded, but it delivers a 1440 x 900 resolution (nice if you are used to 1024 x 768!) and DVI. Photo's, regular use, ... all is really sharp on screen. If you're looking for a cheap wide screen TFT, this one's great! Something off-topic: PHPExcel has already been downloaded more than 700 times! The first version once got 36 downloads...