Page 1 of 1 1
Topic Options
#89270 - 2002-11-04 05:26 PM Kixforms - SHELL32.DLL Icon Extraction Reference
Shawn Administrator Offline
Administrator
*****

Registered: 1999-08-13
Posts: 8611
The following is a list of "standard" icons contained in shell32.dll. Im certain this will come in handy over the next few releases:

code:
00 Unknown File Type 
01 Default document
02 Default application
03 Closed folder
04 Open folder
05 5 1/4 floppy
06 3 1/2 floppy
07 Removable drive
08 Hard disk drive
09 Network drive
10 network drive offline
11 drive
12 RAM disk
13 Entire network
14 ?
15 My Computer
16 Printer Manager
17 Network Neighborhood
18 Network Workgroup
19 Start Menu Programs
20 Start Menu Documents
21 Start Menu Settings
22 Start Menu Find
23 Start Menu Help
24 Start Menu Run
25 Start Menu Suspend
26 Start Menu Docking
27 Start Menu Shutdown
28 Sharing overlay (hand)
29 Shortcut overlay (small arrow)
30 Default printer overlay (small tick)
31 Recycle bin empty
32 Recycle bin full
33 Dial-up Network Folder
34 Desktop
35 Control Panel
36 Program Group
37 Printer
38 Font Folder
39 Taskbar
40 Audio CD
41 ?
42 ?
43 IE favorites
44 Start Menu Logoff
45 ?
46 ?
47 Lock
48 Hibernate

-Shawn

Top
#89271 - 2002-11-04 05:37 PM Re: Kixforms - SHELL32.DLL Icon Extraction Reference
Shawn Administrator Offline
Administrator
*****

Registered: 1999-08-13
Posts: 8611
oops - add one to these numbers to get the desired icon ... i made a little boo-boo in the indexing and this will be corrected in the next release. So if your using extracted icons now, the index will shift by one in the next release. sorry about that.

[ 04. November 2002, 17:38: Message edited by: Shawn ]

Top
#89272 - 2002-11-04 05:43 PM Re: Kixforms - SHELL32.DLL Icon Extraction Reference
Kdyer Offline
KiX Supporter
*****

Registered: 2001-01-03
Posts: 6241
Loc: Tigard, OR
I think there are others too. [Smile]

Progman.exe (doesn't exist in XP) and Pifmgr.dll

Kent
_________________________
Utilize these resources:
UDFs (Full List)
KiXtart FAQ & How to's

Top
#89273 - 2002-11-04 06:26 PM Re: Kixforms - SHELL32.DLL Icon Extraction Reference
Shawn Administrator Offline
Administrator
*****

Registered: 1999-08-13
Posts: 8611
Yeah, I think one of the problems is finding a standardized suite thats implemented on all platforms. Not sure how 9x compatible these are, but know these icons are available under NT4 and NT5 ... I going to be adding a special suite of icons into the Kixforms.dll itself, very soon, but to do that, must pick and choose them very carefully. Each icon can add approx 1 to 3 sometimes 6KB to the DLL size. At first blush, my plan is to add the standard set of toolbar icons (open/close/copy/paste/find) in 16x16 format. These will come in handy down the road for rebars and coolmenus. Other than that, im open to suggestions.
Top
#89274 - 2002-11-05 09:26 AM Re: Kixforms - SHELL32.DLL Icon Extraction Reference
Wizard Offline
Hey THIS is FUN
*****

Registered: 2000-12-05
Posts: 264
Loc: Bristol, England
I am sure that you know that most icons from M$ have various sizes and colour-depths all within one file.

If you want the hassle of extra work you could strip out just the 16x16x16 icons, and maybe the 32x32x16 icons.

What about having them in a seperate DLL - or would that defeat the purpose of the exercise.?!
_________________________
Wizard
There's no place like 127.0.0.1

vb | kix | batch | html | cfm | js | english

Top
#89275 - 2002-11-05 03:53 PM Re: Kixforms - SHELL32.DLL Icon Extraction Reference
Shawn Administrator Offline
Administrator
*****

Registered: 1999-08-13
Posts: 8611
Wiz, I have to agree with you 100%. Think we need to narrow the focus down to supporting 16s and 32s at whatever color depth and leave it at that. And theres much, much more work that needs to be done in terms of defining a standard and simplified approach to specifying bitmaps and icons in Kixforms. Theres a new control in the works right now the will accept multiple icons, in a list, and the current mechanism for specifying icons (the icon property) just doesn't cut it anymore.

VB & C developers have an edge over us Kixtart developers in that they can package just about anything they want, embedded inside the EXE. Wish we had things so good. But we can package a few things inside the Kixforms DLL and I've already started to test and flesh this idea out:

There are a couple of embedded objects in the current version of Kixforms (36). I put them in to start testing the waters. Its an LED flasher that can flash on and off. The resolution aint so good and I'm finding it hard to find good quality free icons on the web. The way the embedded icons are specified is as follows:

$Form.Icon = Number

Here,s an exmaple script:

code:
Break On

$Form = CreateObject("Kixtart.Form")
$Form.Size = 400,200
$Form.Text = "Text..."
$Form.Icon = 0

$imgLight = $Form.Image
$imgLight.Tag = 0
$imgLight.Icon = 0
$imgLight.Center

$tmrTimer = $Form.Timer(500)
$tmrTimer.OnTimer = "OnTimer"

Function OnTimer()
If $imgLight.Tag = 0
$imgLight.Icon = 1
$imgLight.Tag = 1
$Form.Icon = 0
Else
$imgLight.Icon = 0
$imgLight.Tag = 0
$Form.Icon = 1
EndIf
EndFunction

$Form.Center
$Form.Show
While $Form.Visible
$=Execute($Form.DoEvents)
Loop


Top
#89276 - 2002-11-05 05:29 PM Re: Kixforms - SHELL32.DLL Icon Extraction Reference
Wizard Offline
Hey THIS is FUN
*****

Registered: 2000-12-05
Posts: 264
Loc: Bristol, England
I know there are millions of icons available on the net, and some of them have been ripped from M$ anyway.

I think the problem you are going to have is deciding which icons stay and which go. As you may have seen in the middle of the SHELL32.DLL resource, M$ has a tree.! In all my years in IT, I have never seen this icon used by M$. [Confused]

I suppose the basics could include the standard file, folder, computer, network, disk, etc icons that M$ have, and maybe even a tick/cross pair.

Other than that, a way to call either other DLL icon resources from KIX, or linked directly to an .ICO file.

Just my 2 cents.

I think this could turn into one of those debates that go on for a while.!! [Smile]

W
_________________________
Wizard
There's no place like 127.0.0.1

vb | kix | batch | html | cfm | js | english

Top
#89277 - 2002-11-05 06:14 PM Re: Kixforms - SHELL32.DLL Icon Extraction Reference
Shawn Administrator Offline
Administrator
*****

Registered: 1999-08-13
Posts: 8611
yeah agreed again. the debate would center around which icons got included. and they would have to be generic enough, yet usable by all. plus, i could see a schism evolve between icons related to network logins and icons related to network admin scripts.

all that aside, i've been to a few sites that have hundreds upon hundreds of icons. but to be honest - they all suck. getting free professional looking icons seems to be tough to do. unless you know of a site in particular, any recommendations ?

I think the way things are going to shape-up is like follows (and this is strictly psuedo-code mind you). Leverage the ImageList object to host all the icons, the way this would work is as follows:

code:
 
;; Build an ImageList, a control that contains a
;; collection of icons or bitmaps ...

$ImageList = $Form.ImageList

;; the default is 16x16 but well set it up to support 32x32 ...

$ImageList.Size = 32,32

; Add some icons to the imagelist ...

$ImageList.Images.Add("c:\off.ico")
$ImageList.Images.Add("c:\on.ico")

;; Create a button that supports Hot Tracking ... hot tracking
;; is where the icon that is displayed in the button changes
;; depending on whether the mouse cursor is over the button or
;; not ...

$Button = $Form.Button
$Button.ImageList = $ImageList

Now, I'm not sure if this particular object model makes things easier or tougher to script. I know for sure it makes things powerfull, but our we sacrificing too much here ?

Having the icon property there is kinda nice as well, and this should be supported going forward. We should be able to assign one-shot icons using the following syntax:

code:
 $Button.Icon = $ImageList.Images(#)

Where $ImageList is a previously initiallized and loaded ImageList, and # is the index of the icon in the collection.

The the ImageList control is going to happen anyways (to support icons in the other un-implemented ListView report modes), so in keeping with dotnet, extend the ImageList to other controls as well. Personnaly myself, I like this image list approach.

Top
#89278 - 2002-11-05 09:12 PM Re: Kixforms - SHELL32.DLL Icon Extraction Reference
Wizard Offline
Hey THIS is FUN
*****

Registered: 2000-12-05
Posts: 264
Loc: Bristol, England
I like the idea of an image list and the .add(...) method, that way a list of files in a particular folder could be added to the list array quite easily.

As for good quality icons, I think borrowing them from M$ would be the best option, I am just going to check their Copyright page, hang on...

...bugger. Not allowed. Icons

Um, OK, I'll have a look on the net for some icons and let you know.

W

PS, As a side note, I will only be looking for the next two days, as after that I am on holiday in California for three weeks.! [Big Grin] [Big Grin] [Big Grin]
_________________________
Wizard
There's no place like 127.0.0.1

vb | kix | batch | html | cfm | js | english

Top
#89279 - 2002-11-05 09:23 PM Re: Kixforms - SHELL32.DLL Icon Extraction Reference
Wizard Offline
Hey THIS is FUN
*****

Registered: 2000-12-05
Posts: 264
Loc: Bristol, England
Check out...

http://www.iconolog.net/giffed/iconolog/index.html

This guy has over 7000 icons in an ordered list - and with a 5.8mb download.!

W
_________________________
Wizard
There's no place like 127.0.0.1

vb | kix | batch | html | cfm | js | english

Top
#89280 - 2002-11-05 10:27 PM Re: Kixforms - SHELL32.DLL Icon Extraction Reference
NTDOC Administrator Offline
Administrator
*****

Registered: 2000-07-28
Posts: 11577
Loc: CA
Wizard,

His icons are copyright protected as well.

Not sure what your end result is/should be Shawn.

Aside from supporting maybe a half dozen or so icons in the program, in my opinion if others want to have more icons they can create and deploy a .DLL or other library on their own and reference that at the time. I don't think you should spend countless hours and "program size" on this kind of support (imho).

More useful functionality would be time better spent (again imho).

I can't say enough about what a GREAT job you've done so far. Very good little program and with no monetary reward to boot. Thanks for working on this project and if THANKS can be enough?

THANKS THANKS THANKS THANKS THANKS THANKS THANKS THANKS THANKS THANKS THANKS THANKS THANKS THANKS THANKS THANKS THANKS THANKS THANKS THANKS THANKS

And DOUBLE THANKS DOUBLE THANKS

Top
#89281 - 2002-11-05 10:33 PM Re: Kixforms - SHELL32.DLL Icon Extraction Reference
Bonji Offline
Starting to like KiXtart

Registered: 2001-09-28
Posts: 169
Loc: Virginia
HERE HERE!!! A most wonderful tool. Thanks from me too!
Top
#89282 - 2002-11-05 10:47 PM Re: Kixforms - SHELL32.DLL Icon Extraction Reference
Chris S. Offline
MM club member
*****

Registered: 2002-03-18
Posts: 2368
Loc: Earth
I'd like to echo Doc's sentiments to the letter. First, thanks for all the effort you've put in and continue to put into KiXforms. Secondly, I think icon support should be kept to a minimum.
Top
#89283 - 2002-11-06 12:59 AM Re: Kixforms - SHELL32.DLL Icon Extraction Reference
Shawn Administrator Offline
Administrator
*****

Registered: 1999-08-13
Posts: 8611
Thanks guys - I mean that from my heart.
Top
#89284 - 2002-11-06 02:55 AM Re: Kixforms - SHELL32.DLL Icon Extraction Reference
krabourn Offline
Hey THIS is FUN
*****

Registered: 2000-12-11
Posts: 244
Loc: San Antonio, Texas, USA
I have to agree with NTDOC.

THANK YOU!! THANK YOU!! THANK YOU!! THANK YOU!! THANK YOU!! THANK YOU!! THANK YOU!!
_________________________
Kelly

Top
Page 1 of 1 1


Moderator:  Shawn, ShaneEP, Arend_, Jochen, Radimus, Glenn Barnas, Allen, Mart 
Hop to:
Shout Box

Who's Online
0 registered and 158 anonymous users online.
Newest Members
Jodey, Hiker, GTRoberts, KatieQuinn, Brennnnn
17684 Registered Users

Generated in 0.038 seconds in which 0.012 seconds were spent on a total of 12 queries. Zlib compression enabled.

Search the board with:
superb Board Search
or try with google:
Google
Web kixtart.org