mtm2.com MTM2.COM
Log in
The Monster Truck Madness Guild
mtm2.com / mtmg
Textures 6 ▸
Odds & Ends 9 ▸
Errors 4 ▸
Contests 5 ▸
Main Page · Downloads

Cowpod 1.0.3

Reads your game's own pod limit

Source Code


[ Intro | UI | Sorting | Restore | Paths | INI files | Lists | Fonts | Registry | Source | MTM2.com ]

This page is for programmers. If you are not a programmer you may safely give it a pass.

What it is written in

Cowpod started life in visual basic 6.0 and stayed there through version 1.0.1. Version 1.0.3 is a port of that same code to VB.NET, targeting .NET Framework 4.8 and built with Visual Studio 2022. It builds as a single self contained exe with the icons inside it, and runs 64 bit on 64 bit windows.

The port is faithful — same screens, same behaviour, same pod.ini — but some of the plumbing underneath is different.

What changed under the hood

Acknowledgements

While the classes were drawn from the listed sources and reference was made to several resources, the core of cowpod was written entirely by myself. The port to .NET retired some of the borrowed code, because .NET supplies what it was doing. The credit stands either way, and is marked below.

cReadWriteEasyReg (6/6/1999) by Riaan Aspeling — rewritten for .NET, same idea
http://www.planet-source-code.com/vb/scripts/ShowCode.asp?txtCodeId=1987&lngWId=-1

CDLG.cls (3/14/2003) & Browse For Folder (10/14/2004) by DaVBMan — no longer needed, .NET supplies both
http://www.vbcity.com/forums/faq.asp?fid=9&cat=Common+Dialog

cShortcut.cls pulled from VB6 Project Consolidator (2/13/2004) by David Ross Goben — still used, still doing the same job
http://www.planet-source-code.com/vb/scripts/ShowCode.asp?txtCodeId=51722&lngWId=1

Sorting resources by Rick Meyer
http://trixar.com/~makai/

File association information from Winterkill
Private communications

Visual Basic Shell Programming By J. P. Hamilton (O'Reilly press)
http://www.oreilly.com/catalog/vbshell/chapter/ch04.html
recommended by RedLeif
http://p077.ezboard.com/fvisualbasicexplorergeneralvisualbasic.showMessage?topicID=18075.topic

Command line enlightenment from CH_2005
Private communications

FindFilesAPI by Steve Anderson — retired with the rest of the API code
http://mentalis.org/tips/tip59.shtml

Recursion limit suggestion by Gruff
http://www.xtremevbtalk.com/showthread.php?t=224177

iniFileAPI by unknown
http://cuinl.tripod.com/Tips/inifile.htm

Icon Extractor Utility by Todd Morrow
http://www.zexersoft.com/products.html

Strings and Project Analyzer
http://www.aivosto.com/vbtips/stringopt.html
http://www.aivosto.com/project/project.html

Optimization standards
http://windows.oreilly.com/news/vbshell2_0901.html
http://www.programmers-corner.com/article/37

Usability

While cowpod is obviously influenced by previous pod mounting utilities, the base design and functionality are of my own creating. The list swapping configuration arose in conversation with Meth as result of topics raised by Scrooch. Extra paths have been a long standing issue, the registry editor was for my own personal needs and completed with input from JustMight, and the font/monster.ini editor was just because it was there to be done. Thanks go to Malibu350 for sorting it all out to begin with.

The code

Terms of use

The code for cowpod is being released under conditions "similar" to those outlined by the gnu project (gnu.org). That is, you may use it to study and learn. You may use it to make your own projects. And you may use it to contribute to, refine or improve cowpod. However, you should acknowledge the above sources and references where appropriate and you should post (preferrably on the forum here) any changes you make so that they may be considered for inclusion in future versions of cowpod as well. Also, any project you make that draws on the source code here should be similarly released as an open source project so that others may share in the same benefits and take advantage of the same opportunities that you have yourself. Lastly, the code contained here must not be sold or resold under any circumstances whatsoever.

Components

Cowpod is comprised of

Five forms

Two classes

Three controls, which are what let the original list code carry over unchanged

And ten modules

Download


[ Intro | UI | Sorting | Restore | Paths | INI files | Lists | Fonts | Registry | Source | MTM2.com ]
Downloads Tracks Trucks Utilities C-Pod26 Podzip MTM 1 Tracks More Help MTMG Forum Partners Track Shots