--- In [email protected], "brucexs" <[EMAIL PROTECTED]> wrote:
>
> > > among bmp, jpg, png, gif, tif. I think Bruce will implement this
> > > feature eventually into PP, then, stil32jp.dll wouldn't be needed
>
> I am not planning any changes to stil32jp.dll as I don't want to make
> it dependent on having gdiplus.
>
> If you ever want to get into writing a plugin in C or C++, a front end
> to gdi plus might be useful. I'm thinking of something that allows
> you to read and write images, and to draw on images or blank bitmaps.
I felt to be in a maze while reading about gdiplus. I got the feeling
it resembles very much the COM/OLE interface: unintuitive, however,
once grasped then provide a powerful means. Anyway, this study made me
solve (half) the IActiveDesktop problem, which I wanted to use to set
Wallpaper with BMP/JPG/GIF/TIF/PNG, again without the help of
stil32jp.dll or other external tools. Although it'll work only in XP,
it actually doesn't need the ActiveDesktop enabled to use it to set a
wallpaper, I think. Would it be messy to implement this instead in PP?
-----------------------------------------------------------------------
local IID_IActiveDesktop="{F490EB00-1240-11D1-9888-006097DEACF9}"
local CLSID_ActiveDesktop="{75048700-EF1F-11D0-9888-006097DEACF9}"
local xCLSID,xIID,pIAD
dll.call("MultiByteToWideChar|ui ui s i s i",;;+
0,0,"CLSID_ActiveDesktop",-1,"xCLSID",272/2)
dll.call("MultiByteToWideChar|ui ui s i s i",;;+
0,0,"IID_IActiveDesktop",-1,"xIID",272/2)
dll.call("ole32|CLSIDFromString|s s b","xCLSID","CLSID_ActiveDesktop")
dll.call("ole32|IIDFromString|s s b","xIID","IID_IActiveDesktop")
;dll.call("ole32|CoInitialize|ui",0)
dll.call("ole32|CoCreateInstance|s ui ui s ui*",;;+
"CLSID_ActiveDesktop",0,1,"IID_IActiveDesktop","pIAD")
;; no way to use the below yet
;com.method(pIAD,"SetWallpaperOptions",2,0)
;com.method(pIAD,"SetWallpaper","..\wall.jpg",0)
;com.method(pIAD,"ApplyChanges",7)
;com.release(pIAD)
;dll.call("ole32|CoUninitialize|v")
quit
-----------------------------------------------------------------------
Sean
Attention: PowerPro's Web site has moved: http://www.ppro.org
Yahoo! Groups Links
<*> To visit your group on the web, go to:
http://groups.yahoo.com/group/power-pro/
<*> Your email settings:
Individual Email | Traditional
<*> To change settings online go to:
http://groups.yahoo.com/group/power-pro/join
(Yahoo! ID required)
<*> To change settings via email:
mailto:[EMAIL PROTECTED]
mailto:[EMAIL PROTECTED]
<*> To unsubscribe from this group, send an email to:
[EMAIL PROTECTED]
<*> Your use of Yahoo! Groups is subject to:
http://docs.yahoo.com/info/terms/