The MASM Forum

General => The Campus => Topic started by: xandaz on July 10, 2013, 07:56:04 AM

Title: FileIconInit ...cant call directly?
Post by: xandaz on July 10, 2013, 07:56:04 AM
   How is it done?
QuoteFileIconInit is not included in a header file. You must call it directly from Shell32.dll, using ordinal 660.

has anyonne done this?
   ty
Title: Re: FileIconInit ...cant call directly?
Post by: xandaz on July 10, 2013, 07:58:38 AM
   oh yeah... GetProcAddress. ooops thanks
Title: Re: FileIconInit ...cant call directly?
Post by: xandaz on July 10, 2013, 08:47:18 AM
how about SHGetImageList? anyone ever used it? i'm having trouble declaring that GUID. I've seen this form on the web.IID_IImageList TGUID <46EB5926h,582Eh,4017h,9FDFh,0E8998DAA0950h> but it shows too much initial values. Aaarg,
Title: Re: FileIconInit ...cant call directly?
Post by: jj2007 on July 10, 2013, 03:41:08 PM
http://www.masmforum.com/board/index.php?topic=15414.0

Faiseur asked the same question - and got no reply...
No C++ code around? PowerBasic maybe?
Title: Re: FileIconInit ...cant call directly?
Post by: Yuri on July 10, 2013, 07:35:13 PM
The last two numbers are actually a byte array.

<46EB5926h,582Eh,4017h,<9Fh,0DFh,0E8h,99h,8Dh,0AAh,09h,50h>>
Title: Re: FileIconInit ...cant call directly?
Post by: xandaz on July 12, 2013, 10:30:59 AM
   yeah yuri. took a while to understand how to declare to GUID correctly. The answer is of course:
invoke GetModuleHandle,str$("Shell32")
invoke GetProcAddress,eax
call eax

ty guys and regs
Title: Re: FileIconInit ...cant call directly?
Post by: xandaz on July 12, 2013, 10:32:05 AM
oops.GetProcAddress,eax,660
sorry typo forgetful mind
Title: Re: FileIconInit ...cant call directly?
Post by: TWell on July 12, 2013, 02:02:38 PM
Look here (http://www.catch22.net/tuts/system-image-list)
Title: Re: FileIconInit ...cant call directly?
Post by: jj2007 on July 12, 2013, 04:15:46 PM
Quote from: xandaz on July 12, 2013, 10:30:59 AM
   yeah yuri. took a while to understand how to declare to GUID correctly. The answer is of course:
invoke GetModuleHandle,str$("Shell32")
invoke GetProcAddress,eax
call eax

ty guys and regs

chr$("Shell32") might work even better ;-)
Title: Re: FileIconInit ...cant call directly?
Post by: xandaz on August 22, 2013, 07:15:59 AM
  hi... sorry for replying so late. Im a little past that. And sorry for the str$ - i dont really use those macros. i kinda guessed from my BASIC memories.