viksoe.dk

All Site Files

List of all files

2015

Routing in Seoul
Writing an offline map and routing service for traveling in South Korea.
Find out more here.
Article submitted 7/14/2015.

PIR USB Keyboard driver
Building DIY Motion Detection hardware to wake up your PC.
Find out more here.
Article submitted 6/20/2015.

2013

Spam filter
Building your own e-mail spam filter.
Find out more here.
Article submitted 9/1/2013.

2009

PDB Explorer
Browse Windows PDB Debug Files.
Find out more here.
Article submitted 12/10/2009.

Hosting FLASH Charts
How to host a FLASH Charts ActiveX control in a dialog.
Find out more here.
Article submitted 8/26/2009.

Heat Map and Prism Map
Heat maps and Prism maps in Google Earth.
Find out more here.
Article submitted 8/23/2009.

XML Config Reader
Reading XML configurations quickly.
Find out more here.
Article submitted 7/31/2009.

Flickr Drive
Browse Flickr photos from the My Computer folder.
Find out more here.
Article submitted 3/29/2009.

TAR Folder
Browse TAR archives directly in Windows Explorer.
Find out more here.
Article submitted 2/10/2009.

Registry Shell Extension
Browse the Windows Registry tree from the My Computer folder.
Find out more here.
Article submitted 2/5/2009.

TreeMap Graphs
Shows disk usage with treemapping algorithms.
Find out more here.
Article submitted 1/11/2009.

Namespace Tree Control
How to use the Namespace Tree Control in Windows Vista.
Find out more here.
Article submitted 1/3/2009.

2008

Namespace Explorer
Explore the Windows Shell Namespace hierarchy.
Find out more here.
Article submitted 12/27/2008.

Task Dialog Wizard
Using TaskDialog in multi-paged mode.
Find out more here.
Article submitted 11/22/2008.

IconPackager
The StarDock IconPackager user-interface.
Find out more here.
Article submitted 10/29/2008.

Breadcrumbs in Vista
How to create the Breadcrumbs in Windows Vista.
Find out more here.
Article submitted 7/26/2008.

SocWall Control Panel
A Control Panel for Windows Vista using Shell Folders.
Find out more here.
Article submitted 7/15/2008.

Threadpool
How to operate the threadpool in Windows Vista.
Find out more here.
Article submitted 7/11/2008.

Waiting Anim
A small spinning wheel animating control.
Find out more here.
Article submitted 6/1/2008.

LED SideShow
A Windows Vista SideShow Device.
Find out more here.
Article submitted 1/21/2008.

Task Dialog 98
A TaskDialog replacement for Windows XP and worse.
Find out more here.
Article submitted 1/3/2008.

2007

Control Panel Applet
Creates a Windows Control Panel Applet.
Find out more here.
Article submitted 12/20/2007.

Vista Photo Thing
A recreation of the Windows Vista Photo Gallery user-interface.
Find out more here.
Article submitted 11/25/2007.

2005

ASCII Desktop
Displays the Windows Desktop as ASCII art.
Find out more here.
Article submitted 12/6/2005.

ButtonMenu
A menu button control. Ownerdrawn button painting in Windows 98 and Windows XP.
Find out more here.
Article submitted 12/4/2005.

MultiSelect Tree
A tree with multi-select capabilities.
Find out more here.
Article submitted 11/19/2005.

Alpha Play
A short walk-through of the alpha functions in Windows XP.
Find out more here.
Article submitted 11/13/2005.

Blue Marquee
Dragging a blue transparent selection box.
Find out more here.
Article submitted 10/16/2005.

BaseScript
Yet another scripting language.
Find out more here.
Article submitted 8/16/2005.

Windowsless UI
A windowless presentation manager.
Find out more here.
Article submitted 6/26/2005.

LED Frogger
The game of Frogger implemented on a LED display.
Find out more here.
Article submitted 3/19/2005.

U2lwin32
A set of user functions for Crystal Reports.
Find out more here.
Article submitted 1/29/2005.

2004

GMail Drive
An Explorer Shell Extension that creates a Virtual Filesystem around your Google Gmail account.
Find out more here.
Article submitted 10/4/2004.

Hex Editor
A Hex Editor control.
Find out more here.
Article submitted 9/19/2004.

atldataobj
ATL classes that implement a standard IDataObject and clipboard helpers.
Find out more here.
Article submitted 8/29/2004.

Script Studio
A remake of the Envox Studio application.
Find out more here.
Article submitted 8/23/2004.

IntelliMouse
Adds IntelliMouse support to a WTL window.
Find out more here.
Article submitted 8/14/2004.

Phone SIP
A peculiar Pocket PC Input Method.
Find out more here.
Article submitted 8/2/2004.

FilterList
A WTL Smartphone list control like the Contacts control.
Find out more here.
Article submitted 6/9/2004.

Image ListBox
An ownerdrawn listbox for the Smartphone.
Find out more here.
Article submitted 6/9/2004.

RSS Sync
A Pocket PC 2003 ActiveSync extension which downloads RSS news and feeds.
Find out more here.
Article submitted 2/25/2004.

Non-Client control
Testing non-client painting in Windows.
Find out more here.
Article submitted 2/14/2004.

WTL for WinCE.NET
WTL wrappers for the Pocket PC controls (HTML Control, RichInk, DocList etc).
Find out more here.
Article submitted 2/11/2004.

DocListHeader
A WTL DocList Header control.
Find out more here.
Article submitted 2/11/2004.

PlaylistSync
A Pocket PC 2003 ActiveSync extension which refreshes MP3 files and playlists.
Find out more here.
Article submitted 1/18/2004.

2003

Collapsible Panel
A Collapsible Panel Container like the Windows XP Explorer kind.
Find out more here.
Article submitted 11/30/2003.

RtfStatic
A RTF based label replacement with text formatting.
Find out more here.
Article submitted 11/29/2003.

MiniHTML
A GDI based label control with text formatting.
Find out more here.
Article submitted 11/29/2003.

SplitterBar
An even more simple SplitterBar control.
Find out more here.
Article submitted 11/29/2003.

ComboBoxes
Various ComboBox controls.
Find out more here.
Article submitted 11/26/2003.

FLITE
A recompile of the FLITE text-to-speech engine. This TTS engine is one of the first attempts on an open-source speech component that work on mobile devices.
Find out more here.
Article submitted 10/24/2003.

PocketKiSS
An FKiSS viewer for the Pocket PC.
Find out more here.
Article submitted 10/4/2003.

ThemeSync
A Pocket PC 2003 ActiveSync extension which cycles your Today theme.
Find out more here.
Article submitted 8/22/2003.

BVRDE
An IDE for remote compiling and debugging UNIX and LINUX applications from Windows.
Find out more here.
Article submitted 6/21/2003.

Day Planner
Plan you day! With drag'n'drop and custom drawing.
Find out more here.
Article submitted 2/23/2003.

Calendar
A simple calendar control with appointment lists.
Find out more here.
Article submitted 2/16/2003.

ListView Tip
A tracking tooltip for a ListView control
Find out more here.
Article submitted 2/16/2003.

Script Editor
A RTF based editor with syntax highlighting.
Find out more here.
Article submitted 2/16/2003.

Scanf Edit
A masked edit control, which displays like the Date Time Picker control.
Find out more here.
Article submitted 2/16/2003.

2002

MS Outlook Bar
A control which looks like the MS Outlook Navigation bar.
Find out more here.
Article submitted 9/21/2002.

Skinned Button
A WTL version of Shinya Miyamoto's Window Blinds skinned button.
Find out more here.
Article submitted 7/30/2002.

LED control
A LED control.
Find out more here.
Article submitted 6/29/2002.

MS Access Bar
A control which looks like the MS Access 2000 Navigation bar.
Find out more here.
Article submitted 6/29/2002.

Fade Button
A button which glows when the mouse hovers over it.
Find out more here.
Article submitted 6/29/2002.

Tabbed Dialog Container
A container window for dialogs. Also includes a Tab control with view support.
Find out more here.
Article submitted 6/29/2002.

atlctrlsext
Additional WTL Window control wrappers.
Find out more here.
Article submitted 6/1/2002.

XML OLE DB Provider
An OLE DB Provider allowing you to query XML documents with SQL.
Find out more here.
Article submitted 5/16/2002.

WTL XP UI and Script
A sample project demonstrating my experimental WTL XP classes.
Find out more here.
Article submitted 4/23/2002.

WTL Documentation
HTML Help Documentation for the WTL library.
Find out more here.
Article submitted 4/4/2002.

GraphLite
A simple graph control.
Find out more here.
Article submitted 3/16/2002.

Balloon Dialog
An Office 97-like balloon dialog.
Find out more here.
Article submitted 3/2/2002.

Coloured controls
Extensions to most of the standard Windows controls with custom colouring.
Find out more here.
Article submitted 2/28/2002.

Simple HTML Viewer
A RTF-based HTML viewer control. Extends the RichEdit control.
Find out more here.
Article submitted 2/25/2002.

PropertyGrid
A simple WTL grid control.
Find out more here.
Article submitted 1/26/2002.

atlwinsuper
Extensions to the ATL window classes for superclassing.
Find out more here.
Article submitted 1/11/2002.

PropertyTree
A WTL Property Tree control; resembles the IE Options control.
Find out more here.
Article submitted 1/6/2002.

Database wrappers
A set of classes wrapping the ODBC, SQLite and OLE DB database APIs.
Find out more here.
Article submitted 1/5/2002.

2001

CFixedString
Implements a CString-like class with a fixed-length string buffer.
The buffer will be allocated on the stack and is size-limited by a template argument.
Find out more here.
Article submitted 12/30/2001.

Command Bar XP
An extension to the WTL Command Bar. Looks more Office XP like.
Find out more here.
Article submitted 11/27/2001.

Image ListBox
An ownerdrawn listbox with images and formatting.
Find out more here.
Article submitted 11/7/2001.

Network wrappers
A set of classes wrapping the Windows network APIs.
Find out more here.
Article submitted 10/2/2001.

Console Screen
Wrapper class for the Win32 Console API.
Find out more here.
Article submitted 9/30/2001.

Client / Server
A simple client/server application. Supports TCP/IP, Named Pipes, HTTP (via ISAPI), OLE DB and ADO with SQL queries.
Find out more here.
Article submitted 9/29/2001.

CResLoader
This class wraps the string resource Win32 API, e.g. loading and retrieving strings from an external resource file.
Find out more here.
Article submitted 9/23/2001.

WepMetering
WepMetering hooks right into the WinSOCK library of your Web browser and monitors all your internet activity.
To achieve this a custom DLL is injected into every process' address space and assembler instructions in the WinSOCK DLL are overwritten.
Find out more here.
Article submitted 9/4/2001.

ASMIL
Did you ever wish you could write ASP.NET pages in 80386 assembler? Will now you can with this blazing ASP.NET native language.
Find out more here.
Article submitted 8/25/2001.

PropertyList
A WTL property list control; just like the one in MS Visual Basic.
Find out more here.
Article submitted 8/14/2001.

Explorer Bar sample
Shows you how to create an Internet Explorer Bar that renders through an HTML page.
Find out more here.
Article submitted 7/27/2001.

Skinned UI
A mock-up project, which displays a skinned User Interface.
Find out more here.
Article submitted 7/19/2001.

ChoiceBar
A generic popup bar with buttons in a grid. Includes a palette chooser, border style bar and a pen style popup.
Find out more here.
Article submitted 7/14/2001.

Menu Control
A fix for the infamous WTL 3.1 CommandBar MDI bug.
Find out more here.
Article submitted 7/6/2001.

Recent Command Bar
An extension to the WTL Command Bar. Looks more Office 2000 like.
Find out more here.
Article submitted 7/6/2001.

atldib
A DIB (Device Independant Bitmap) class.
Find out more here.
Article submitted 7/1/2001.

HTML ListBox
A WTL list control which uses the HTML layout engine.
Find out more here.
Article submitted 6/12/2001.

atldyndispatch
Turn raw C++ objects into IDispatch objects, or use dynamic IDispatch method tables in ATL.
Find out more here.
Article submitted 6/12/2001.

Edit Validate
A subclassed EDIT control that only accept input based on a pattern-matching mask. With nice visual cues on errors.
Find out more here.
Article submitted 6/7/2001.

Edit Filter
A simple subclassed EDIT control, which filters input.
Find out more here.
Article submitted 6/7/2001.

ZIP Archive
Examine and extract files from ZIP files.
Find out more here.
Article submitted 6/7/2001.

Amiga Demos
My long forgotten Amiga demos. Code and executable for the Commodore Amiga computer (can be run using an Amiga emulator).
Find out more here.
Article submitted 6/7/2001.

atldebug
Adds new macros to your TRACE arsenal.
Find out more here.
Article submitted 6/7/2001.

atldock
A basic docking windows framework for WTL.
Find out more here.
Article submitted 6/7/2001.

CFile
Class that wraps the Windows File API functions.
Get easy access to files with easy-to-remember access methods like Open() and Create().
Find out more here.
Article submitted 6/7/2001.

atlscript
Default implementation of the Active Scripting Host interfaces.
Find out more here.
Article submitted 6/7/2001.

atlshellext
A library of ATL classes that make it a breeze to create Windows Shell Extensions.
Find out more here.
Article submitted 6/7/2001.

atlvbevents
Two ATL plug-in classes, which implement the mouse and keyboard events known from the standard VB controls.
Find out more here.
Article submitted 6/7/2001.

atlwinmisc
Wraps a couple of the common Windows data types and functions.
Find out more here.
Article submitted 6/7/2001.

Auto Hide control
Adds "Auto Hide" side-bar to you window frame. It's that annoying left-side pop-up window from VisualStudio.NET.
Find out more here.
Article submitted 6/7/2001.

Bevel Line
Turns a regular label (static control) into a bevel (raised or sunken) line.
Find out more here.
Article submitted 6/7/2001.

Non-Rect
Sample showing how to create a non-rectangular window.
Find out more here.
Article submitted 6/7/2001.

Demo Source Code
My very first source code for the PC. Lots of assembler and Pascal routines. Fancy 3D graphics, polygon graphics, gouraud shading and a Wolfenstein engine in 500 lines of assembler/Pascal.
Check them out. These files were very popular many years ago.
Find out more here.
Article submitted 6/7/2001.

CDir
Wraps a few Directory Windows API functions for creating and deleting complete directory subtrees.
Find out more here.
Article submitted 6/7/2001.

Edit ListBox
Looks like the MS Developer Studio edit listbox.
Find out more here.
Article submitted 6/7/2001.

CFileVersionInfo
Wraps the Windows File Version API.
Find out more here.
Article submitted 6/7/2001.

CFixedMath
A tiny class implementing fixed 16.16 integer math.
Find out more here.
Article submitted 6/7/2001.

Gradient Label
Turns a regular label (static control) into a gradient filled label control.
Find out more here.
Article submitted 6/7/2001.

CPathMonitor
This class uses the FindFirstChangeNotification Win32 API to detect changes to files in a directory.
Find out more here.
Article submitted 6/7/2001.

CPersistRegistry
A simple persist class modelled after the ATL IPersistStreamImpl and IPersistPropertyBagImpl. It writes data to the registry.
This class allows you to use the BEGIN_PROP_MAP / END_PROP_MAP maps and have the data written to the registry.
Find out more here.
Article submitted 6/7/2001.

Pie Chart
A simple pie chart control with two sections.
Find out more here.
Article submitted 6/7/2001.

PropertyView
A LISTBOX subclass that displays a property-list. Not in-place editable.
Find out more here.
Article submitted 6/7/2001.

CReg
Wraps the Windows Registry API.
Find out more here.
Article submitted 6/7/2001.

CRegPropBag
This implementation of the IPropertyBag interface persists object properties to the registry.
Find out more here.
Article submitted 6/7/2001.

RTF ToolTip
Use RTF in your tooltips. Create tooltips like in MS SQL Server 7.
Find out more here.
Article submitted 6/7/2001.

Read Write Lock
A read/write semaphore.
Find out more here.
Article submitted 6/7/2001.

CServices
Wraps the Windows Service API functions.
Find out more here.
Article submitted 6/7/2001.

Shell Controls
A bunch of controls that show files and folders using the Shell interfaces.
Find out more here.
Article submitted 6/7/2001.

TaskBarIcon
A wrapper for the Shell Task Bar API to enable your own taskbar icons.
Find out more here.
Article submitted 6/7/2001.

CThread
Thin wrapper around the Win32 Thread API.
Find out more here.
Article submitted 6/7/2001.

TreeListView
It's one of those "tree with a combined listview" controls.
Find out more here.
Article submitted 6/7/2001.

CVbString
CVbString is a wrapper class for the strange VB4 string type.
Find out more here.
Article submitted 6/7/2001.

atlgdix
Some extra GDI classes. Implements a memory DC for offscreen flicker-free painting.
Find out more here.
Article submitted 6/6/2001.

Cool Tabs
A set of custom drawn tab controls.
Includes DevStudio 6 and VisualStudio.NET folder tabs.
Find out more here.
Article submitted 6/2/2001.

Docked UI
A sample project demonstrating my experimental WTL UI classes. It includes trendy classes such as the Docking Views, TaskBar Icon and Dialog Shadows classes.
Find out more here.
Article submitted 6/1/2001.

Context Menu
A Shell Context Menu extension that adds two menu items to all files: Join and Split.
Find out more here.
Article submitted 1/24/2001.

ADF View
A Shell Namespace extension allowing you to browse ADF (Amiga Disk Files) in the Windows Explorer.
Find out more here.
Article submitted 1/19/2001.

2000

EasyNLS
A light-weight component for Visual Basic 6 programmers facing the task of localizing their applications.
Wraps resource DLL functions, locale specific functions and provides several helper functions for localizing VB applications.
Find out more here.
Article submitted 12/21/2000.

Global
Several global functions, macros and constants used by many of the MFC classes I have written.
Find out more here.
Article submitted 11/20/2000.

WebPageLoader
An internet download utility. Downloads entire web pages or series of files.
Multi-threaded MFC project, which will download and parse web pages, downloading all images and documents referenced. Features many configurable options.
Find out more here.
Article submitted 11/20/2000.

Site Map
The Site Map ActiveX control provides the same functionality as the Microsoft Visual InterDev Site Diagram control.
Find out more here.
Article submitted 11/8/2000.

atldtc
Default implementation of the Design-Time Control interfaces.
Find out more here.
Article submitted 10/18/2000.

CDrive
Wraps the Windows API functions for Disk Drives.
Find out more here.
Article submitted 10/15/2000.

CExecProg
Wraps the Windows CreateProcess() API.
Find out more here.
Article submitted 10/15/2000.

CShellLink
Wraps the Shell's shortcut API.
Find out more here.
Article submitted 10/15/2000.

EasyINI
A light-weight component for Visual Basic 6 and ASP programmers.
Wraps the Windows .INI configuration file API (GetPrivateProfileString() etc).
Find out more here.
Article submitted 10/11/2000.

CLogFile
Implements a small log class.
Find out more here.
Article submitted 10/5/2000.

FileMess
FileMess is a neat utility, which moves files from one folder to another using pattern matching.
Find out more here.
Article submitted 10/2/2000.

CIni
Wraps the Windows .INI configuration file API.
There must be a million classes wrapping the WritePrivateProfileString() related functions, so here is my contribution.
Find out more here.
Article submitted 10/1/2000.

Focus Flasher
Tracks the current window/control with focus.
Find out more here.
Article submitted 10/1/2000.

CleanFiles
A sample Disk Cleanup Handler.
Find out more here.
Article submitted 9/9/2000.

Dialog Ed
Dialog Ed implements a dialog editor using the DHTML Editing Component.
Find out more here.
Article submitted 9/7/2000.

Engine1
My first attempt with Direct 3D.
Builds a dynamic world with DirectX 7.0. Supports 3DS and MD2 models, and allows user defined objects and lights.
Find out more here.
Article submitted 7/27/2000.

IE Scripter
Adds a toolbar to the Internet Explorer, allowing you to write scripts that executes and manipulates the page's DHTML object model.
A goodie for web developers and testers.
Find out more here.
Article submitted 7/20/2000.

EasyHTML
Three DTC controls to help HTML writers with layout and import problems.
One of the controls implements ASP-like scripting capabilities to allow design-time dynamic HTML creation.
Find out more here.
Article submitted 7/10/2000.

HTML Source Bar
A cool Internet Explorer 5 plug-in allowing you to examine the source contents of any HTML page. Shows parsed HTML, script code, style sheet source and image information of the current browser contents.
Find out more here.
Article submitted 7/5/2000.

ModiMath
3D Studio MAX 2.5 plug-in, which modifies the mesh using custom expressions.
Find out more here.
Article submitted 6/1/2000.

Relationship
A control modelled after the MS Access Relationship editor.
Find out more here.
Article submitted 5/21/2000.

CLongDate
Wraps a special string date format.
Find out more here.
Article submitted 1/10/2000.

1999

MailSlot
A light-weight component for Visual Basic 6 programmers.
Mail Slots are part of the IPC options available for Windows programmers. It enables you to send messages to remote computers.
Find out more here.
Article submitted 11/15/1999.

WriteRes
Modifies the icon resource section of any application.
Find out more here.
Article submitted 11/15/1999.

Virtual List
The Virtual List ActiveX control adds speed, almost unlimited number of entries and page scroll buttons to the regular list control.
Find out more here.
Article submitted 11/14/1999.

NewsCounter
NewsCounter connects to a USENET (news) server and retrieves a list of available newsgroups. It then allows you to get the number of postings in each group.
Find out more here.
Article submitted 11/12/1999.

DocWizard
This MS Visual C++ 6.0 AppWizard adds automatic generated documentation in HTML Help to your ATL projects. Parses your IDL file for object hierarchy and method descriptions.
Use JavaDoc standard comments in your source code to add additional documentation.
Find out more here.
Article submitted 11/8/1999.

EasyReg
A light-weight component for Visual Basic 6 and ASP programmers.
Wraps the Windows Registry API (RegQueryValue() etc).
Find out more here.
Article submitted 11/6/1999.

WordProp
Reads the Summary Information from any Compound Document, such as Word, Excel and Powerpoint files.
Find out more here.
Article submitted 10/26/1999.

SubTitle
A 3D Studio MAX 2.5 filter that produces sub-title alike texts to the rendered image.
Find out more here.
Article submitted 9/14/1999.

Todays Events
A simple Shell extension, which displays today's System event logs.
Find out more here.
Article submitted 8/3/1999.

1998

CharAnim
An incomplete MFC project with Quake MD2 model OpenGL rendering and editing capabilities.
Find out more here.
Article submitted 10/16/1998.

Game1
My experiences with game script programming - featuring my very own scripting language and virtual machine.
Find out more here.
Article submitted 9/9/1998.


Wow, even I didn't realize that there were this many entries. Maybe I should cut back on the programming and get a real life... Smiley