May 29, 2005
In article <d7bot7$226n$1@digitaldaemon.com>, Trevor Parscal says...
>were all missing from all ports of the windows header files i could find. I was actually really dissapoined with the Core32 library (http://dsource.org/projects/core32/) as it had so many problems with it right off the svn server, i just gave up.

Care to tell me what the problems are so that I might be able to fix them?

I just realized that the links in http://www.dsource.org/forums/viewforum.php?f=16 were messed up from the some changes that happened recently with the dsource upgrade. I'm sorry if that wasted your time. It's fixed now.

jcc7
May 29, 2005
In article <d7dd49$bac$1@digitaldaemon.com>, J C Calvarese says...
>
>In article <d7bot7$226n$1@digitaldaemon.com>, Trevor Parscal says...
>>were all missing from all ports of the windows header files i could find. I was actually really dissapoined with the Core32 library (http://dsource.org/projects/core32/) as it had so many problems with it right off the svn server, i just gave up.
>
>Care to tell me what the problems are so that I might be able to fix them?

I can tell you few things I met...

First I wanted to have IE in my app and it was OK althought to get a single window I need kilobytes of code but there was no interface (or whatever it is called) for the events so it is useless to me...

Most common controls are missing.

GradientFill is missing.

And the other thing I had problem with was to discover which module contains the functions I need. Maybe naming it like MS would help... then you can just look in msdn amd import core32.windows; or whatever...

It is nice project and I can see you've done a LOT of work. But wouldn't it be wiser to extend http://int19h.tamb.ru 's headers instead of rewriting all that...


May 29, 2005
"Trevor Parscal" <Trevor_member@pathlink.com> wrote in message news:d7dctv$b2o$1@digitaldaemon.com...
> Well, I am now wondering what up with my windows version of user32.dll,
> cause
> it's got none of the functions I was needing...
>
> extern(Windows) WINBOOL GdiFlush(VOID);

GdiFlush is in gdi32.dll. Link in gdi32.lib.

> extern(Windows) ULONG* GetClassLongPtrA(HWND, int);
> extern(Windows) ULONG* GetClassLongPtrW(HWND, int);
> extern(Windows) ULONG* GetWindowLongPtrA(HWND, int);
> extern(Windows) ULONG* GetWindowLongPtrW(HWND, int);
>
> Are all apparently missing from my DLL..

Ok, it appears these functions don't exist for 32-bit Windows (64-bit only). I've tracked them down in the SDK headers, and they're just aliases for GetWindowLong etc. The equivalent in D is to do this:

    alias GetWindowLongA GetWindowLongPtrA;
    alias GetClassLongA GetClassLongPtrA;

and so on.

They're included for symmetry with the Set*LongPtr functions, which do exist.

Also, as I mentioned earlier, they don't return pointers - LONG_PTR is a typedef for C's 'long', which is the same as 'int' in D.

>
> the functions...
>
> extern(Windows) ULONG* SetClassLongPtrA(HWND, int, ULONG*);
> extern(Windows) ULONG* SetClassLongPtrW(HWND, int, ULONG*);
> extern(Windows) ULONG* SetWindowLongPtrA(HWND, int, ULONG*);
> extern(Windows) ULONG* SetWindowLongPtrW(HWND, int, ULONG*);
>
> Are in there, and mapped properly.
>
> Any ideas as to what to do? Work arounds? I am stumped as to why a windows
> XP
> install wouldn't have these functions in the user32.dll library.
>
> I really appriciate this help, it's making a big difference.
>
> Thanks,
> Trevor Parscal
> www.trevorparscal.com
> trevorparscal@hotmail.com


May 29, 2005
In article <d7de8s$c8i$1@digitaldaemon.com>, bobef says...
>
>In article <d7dd49$bac$1@digitaldaemon.com>, J C Calvarese says...
>>
>>In article <d7bot7$226n$1@digitaldaemon.com>, Trevor Parscal says...
>>>were all missing from all ports of the windows header files i could find. I was actually really dissapoined with the Core32 library (http://dsource.org/projects/core32/) as it had so many problems with it right off the svn server, i just gave up.
>>
>>Care to tell me what the problems are so that I might be able to fix them?
>
>I can tell you few things I met...

Thanks for your input.

>
>First I wanted to have IE in my app and it was OK althought to get a single window I need kilobytes of code but there was no interface (or whatever it is called) for the events so it is useless to me...
>
>Most common controls are missing.

So you're saying that commctrl.d is incomplete. I believe you, but I'm just one person and it's tricky figuring out what is particular needs to be added. I would accepted donated code if it fit with the Core32 style (which is hard to describe). ;)

>
>GradientFill is missing.

I guess it is missing. According to MSDN, it's been around for a while so I
can't explain why it's not there. It should be part of wingdi.d.
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/gdi/bitmaps_8oa4.asp

Maybe Core32 is based on a really old version of the Platform SDK. That'd be bad news. :(

>And the other thing I had problem with was to discover which module contains
> the functions I need. Maybe naming it like MS would help... then you can just > look in msdn amd import core32.windows; or whatever...

I think "import win32.api" was meant to fill this role, but now that I look at it not everything is imported. Hmmm...

>It is nice project and I can see you've done a LOT of work.

Actually, Mike Wynn did most of the work. I've just tried to keep it going when he apparently dropped the project.

>But wouldn't it be wiser to extend http://int19h.tamb.ru 's headers instead of >rewriting all that...

I've been aware of int19h.tamb.ru for years, but it hasn't been updated in a
long time. If I were to approach the project from a new angle (and redo
everything), I'd base it on the public domain headers (w32api) from
http://www.mingw.org/ (and rely heavily on automation).

If anyone has another other specific complaints and comments about Core32, we should probably discuss them over at the forum at dsource (http://www.dsource.org/forums/viewforum.php?f=16), so that we don't clutter up this newsgroup.

jcc7
May 30, 2005
>>
>>GradientFill is missing.
>
> I guess it is missing. According to MSDN, it's been around for a while so
> I
> can't explain why it's not there. It should be part of wingdi.d.
> http://msdn.microsoft.com/library/default.asp?url=/library/en-us/gdi/bitmaps_8oa4.asp
>

GradientFill  resides in Msimg32.dll.

Msimg32 appeared in WinME - there it is
a full implementation.

Msimg32.dll on XP is a proxy
for correspondent GdiGradientFill, etc.
calls from GDI32.dll.

Ideally your application should not
depend on Msimg32.dll existence so
you cannot link it statically.

Andrew.




1 2
Next ›   Last »