06/02/2006: It’s been quite a while since there’s been any new content on the site, however I’ve written the first part of a new article on I/O streams in VB which you’ll find in the tutorials section. I’ll be adding to the article over the coming weeks until it’s completed so it’s in somewhat of a ‘beta’ stage right now and there will also be no .PDF version until the article is completed.
As always I’m open to feedback on the article and opinions on how useful this staged approach to new articles is.

11/07/2005: There's a new update to the multi-monitor library to allow some more (WinXP only) properties of the display mode to be modified, and a small bug-fix of the demo application source.

04/06/2005: There's a new demo on the files page called "Colour adjustment demo" which demonstrates how to adjust images appearance when they're drawn including brightness/contrast/gamma. This method uses the Win32 API and is only supported on WinNT based OS' but is pretty easy to use.

15/01/2005: Some more goodies for you all today, I’ve finally got around to getting the DIB article up as least in part, part 1 to be precise. This one goes through GDI DIBs from simple creation to extreme performance tricks, gives an in-depth anatomy of the Bitmap format as well as conversion between the various DIB formats such as .BMP files and Packed DIBs.
Unlike the other articles on the site this one does not go through the creation of objects which encapsulate the functionality learned in previous chapters due to time constraints; this will hopefully be added in a later article (part 2.)

There’s also a new demo application added to the demo files section of the site under “Edge detection / Edge snap / Filter kernel”. This one presents a reasonably generic class for encapsulating images (again based on DIBs) including a generic filter matrix/convolution kernel routine for performing many types of image filters including blur, sharpen, find edges etc.
The demo application included with this also demonstrates how to snap the cursor to the edges of a shape based on a query from the newsgroups a while back.

If anyone wants to know more about the filter kernel approach then please let me know as I’m contemplating writing up a short article on it since the solution provided in the demo includes, at least as far as I know, a new method of dynamically weighting edge kernels based on my own research in the area.

Hopefully all the links are now fixed (.frm files were still not accepted by the server as 'safe' MIME types..), if you find any others that are broken then please drop me a line so I can get them fixed.
Finally, the EDais section and site map are back online so hopefully navigating the site should be a little easier. As always let me know if you have any ideas about how to make the site better for you. Phew that was a big update!

28/12/2004: A new article today on direct memory manipulation in VB, this was originally going to be tagged on to the end of another article however I decided to split it off and beef it up a bit into a short article of its own – For more information head over to the tutorials page and let me know what you think!
Hope everyone’s hangovers are finally clearing, getting ready to go through it all again for New Year!

21/11/2004: Finally, some new content! I recently had to look into using the ZLib compression library in VB and discovered that most of the examples available used old versions of the library rather than the latest build, so decided to have a hack at writing support for the latest build myself. After making it work it seemed to be an interesting subject for a quick little article so I took the weekend off and wrote it up, the results are now available on the tutorials page.
Also, the problem with certain file types has hopefully been resolved, however if any other broken links are found then please let me know so I can get them sorted out.

03/11/2004: It's recently been brought to my attention that there are numerous broken links to the source code files on the site, upon further inspection it appears that this is a 'feature' of the new server and many file types (including .frm, .cls and .ctl) have been blocked, or more accurately only those files types with explicit MIME types are accessible.. Unfortunately I don't have time right now to go through and zip up all the code files and change all the links but hopefully that will be fixed this weekend, until then if there's a particular file you're after then by all means let me know and I'll send it over.
Apologies for the inconvenience..

27/09/2004: Having recently acquired a PocketPC I've been messing around with the compact framework in C# and have just finished my first little application! Not terribly interesting, it simply displays the current date and time but using a neat little bitmap font engine written specifically for it, etting it to update properly without flickering all the time was a particular chore but it seems to have come out reasonably well. I'm not going to be releasing the source code on the site as of yet since I'm sure it's very inefficient and pretty kludgy however if you want a peek then let me know and I'll send it over - It's written in VS.NET 2003.

Click to view larger screenshot
Download

On other news, the site recently got re-located to a new server - A huge thanks to the guys over at www.mvps.org for hosting the site! The new server supports ASP so hopefully at some point I'll get at least some of the site database driven, and the new URL for the site is EDais.mvps.org so update your bookmarks!

19/09/2004: A few new things today, there’s now 4 new libraries on the page - 3 of which anyone who has been following any of my recent graphics related posts will be familiar with; CopyBitmap, IconHelper and OLEPicture, they just now have proper homes and a little documentation.
The fourth library is a new addition to the *Info suite of classes, this time for PNG images including CRC checking and full interpretation/validation of about 80% of the defined chunks.
A new demo application also snuck onto the site last weekend without a public update (since I was so close to getting these libraries uploaded) which demonstrates how to threshold the alpha channel of an icon based on a recent newsgroup request.

That’s all for now though, just a quick word of thanks for those of you who have written their thanks for the content on the site over the last few months including: Nic, Andrew, Robert, Günter, Joan, Steve, Carey, Jhossef, Rajesh, Richard, Johannes, Zoltán, Percy and Jean-Pierre.
I’m sure there’s probably more I’ve missed out from the list above so thanks to the rest of you too, it’s great that people are still using the page despite my increasingly infrequent updates!

03/05/2004: I wasn't sure this day would ever come, but the first two of the new GDI articles are online - hurrah! The first one is a huge (~50 page) article covering DC use and general GDI API use as well as drilling into some of the GDI objects, have a look on the tutorials page for a full description. The second weighs in at ~30 pages and covers DDB use in VB and like the old GDI articles that used to be on the site, walks through creation of a neat little class that encapsulates the functionality the API exposes.
The third article is currently in progress and deals with DIB usage in much the same way as the DDB article but probably in a little more depth as it's a larger subject. I have no estimated timeframe on when it will be available (I started work on this series 9 months ago!..) so my recommendation would be not to hold your breath for the next. If there's anything you want to see in the next one or any problems you can see with the current articles then please let me know, any feedback in general would be greatly appreciated.

On a less important note, I've slightly changed the navigation system for the page to include a little navigation path at the top of each page which should make traversing the site a little quicker and the structure more apparent.

06/04/2004: A new demo application with full source today which may be useful to some, it shows a reasonably generic technique for blending GDI calls over the background to enable rendering of semi-transparent shapes, text and pictures. You'll find this on the demo files section under "GDI Blend".

14/03/2004: 6 million years in the making..
Well, maybe not quite but yes it's been a while since I got around to updating the site. This isn't really a huge update especially for those who knew the old version(s) of the site, however finally some of the old tutorials are now back up again in the new format and with various code revisions. Currently online are:

The last article has had another chapter written added to it, which goes into using interfaces and wrapped collections in the demo project.
All the articles have had the code cleaned up (well, to my current coding style at least, many would say that this is far from 'clean' though!) and PDF versions of the articles are available for download – head over to the Adobe Acrobat site if you need the reader

05/10/2003: As anyone who has e-mailed me in the last couple of weeks will know, I’ve been obscenely busy since starting a new job, and this will probably continue for a good few weeks yet. As such I’m also having to cut back on the newsgroups (Almost sounds like a ‘dirty habit’!) for the time being and only actively checking the microsoft.public.vb.winapi.graphics group, if there are any other graphics related posts that I should be looking at on other groups then feel free to give the poster my e-mail address (use the MVP's address) and I’ll take a look.
Cheers, and I hope to see you all back on the groups soon!

27/09/2003: I've cleaned up the libraries page a little and organised it into different sections which should make it easier to find things on there now, and it fits in better with the rest of the design.
I've also posted 3 new libraries; the first is a heavily upgraded version of my old MP3-info class with thanks to Norm Cook for his suggestions and contributions to the library.
Next up is a pretty complex multi-monitor library consisting of 3 objects and a helper module, which gives VB developers an easy object-oriented method of utilising multiple monitors in their projects. The library also hooks into the system and will raise an event when the system resolution is changed, allowing your application to re-position itself should it be moved off-screen for example.
The final library is really an offshoot from the multi-monitor library and was developed in parallel with it, it's simply a rectangle class that wraps up a lot of the API's rectangle functionality and offers some interesting new methods too.
All of this has unfortunately been a little rushed, so if you find any problems with any of the above then give me a shout and I'll get it fixed.
Finally, I'm starting a new job on Monday so spare time will be somewhat of a question mark for a little while. Whatever happens though, I'll endeavour to keep the site updated as to how things are likely to progress here.

17/08/2003: Not much here, is there?? The rest of the page will begin to appear here as it gets done. By releasing it as it develops like this, at least some of the content will be available while the rest makes it's way back online, unfortunately I don't have any timeframe currently on when that may be though other than just "when it's done"..
The libraries page is the only content online currently, but everything there has been updated and documented (Nearly!) Hopefully this will make them more useful to everyone since the little function descriptions only held a very brief overview of what the function was used for and not how to use it. If anyone has any idea on how to make these pages more useful then that would be great.

Mike D Sutton of EDais
(Microsoft Visual Basic MVP)