www.digitalmars.com         C & C++   DMDScript  

D - win32.lib

reply "Charles Sanders" <sanders-consulting comcast.net> writes:
Hey all,

Ive bundled Y.Tomino's win32 headers together with winsock, some usable
libraries , some contrib ( socket.d, depsrc.d ), and a help file ( useful
only for finding what header for what function really ).  You can get it
here www.atari-soldiers.com/win32.html .  I'd like to see this become
standard, so please use it and report any findings.

Its also bundled with dide .99 ( www.atari-soldiers.com/dide.html ), added
drag n drop, cleaned up some stuff.  Next release ill put to use Lars' dep
walker, ill try to release more often also.  Im still having that problem
with DIDE losing focus, then regaining focus and the caret is lost.  You can
find the MFC Scintilla bindings here
www.atari-soldiers.com/mfc_scintilla.zip , with a sample program to display
the problem at www.atari-soldiers.com/ScintillaTest.zip .  Please help if
you can!

Also, Im going to start on WinDy, some D bindings for win32 GUI's.  I
mention this in case someone else has already started and we can collobarate
or I can offer some help.

C
Oct 26 2003
next sibling parent reply J C Calvarese <jcc7 cox.net> writes:
Charles Sanders wrote:
 Hey all,
 
 Ive bundled Y.Tomino's win32 headers together with winsock, some usable
 libraries , some contrib ( socket.d, depsrc.d ), and a help file ( useful
 only for finding what header for what function really ).  You can get it
 here www.atari-soldiers.com/win32.html .  I'd like to see this become
 standard, so please use it and report any findings.
I absolutely agree that we need to standardize on one set of Win32 headers. Are you familiar with Mike Wynn's Win32 work at converting headers (http://www.geocities.com/one_mad_alien/dcom_not_dcom.html)? I made a few minor fixes to Mike's work to resolve some conflicts with phobos's windows.d (http://jcc_7.tripod.com/d/win32.zip). I noticed something in Y. Tomino's efforts (in winbase.d): enum : uint { FILE_BEGIN = 0 } enum : uint { FILE_CURRENT = 1 } enum : uint { FILE_END = 2 } where Mike takes this approach... enum { FILE_BEGIN =0, FILE_CURRENT =1, FILE_END =2 } I think this indicates there are different approaches that can be taken. Tomino's files take up more space than Mike's files, so I think it probably is more comprehensive. There is certainly much overlap between the work of these two individuals. Doesn't dig contain some of this stuff? Also, re-defining things that are defined in windows.d can cause conflicts that we need to try to avoid.
 
 Its also bundled with dide .99 ( www.atari-soldiers.com/dide.html ), added
 drag n drop, cleaned up some stuff.  Next release ill put to use Lars' dep
 walker, ill try to release more often also.  Im still having that problem
 with DIDE losing focus, then regaining focus and the caret is lost.  You can
 find the MFC Scintilla bindings here
 www.atari-soldiers.com/mfc_scintilla.zip , with a sample program to display
 the problem at www.atari-soldiers.com/ScintillaTest.zip .  Please help if
 you can!
 
 Also, Im going to start on WinDy, some D bindings for win32 GUI's.  I
 mention this in case someone else has already started and we can collobarate
 or I can offer some help.
Mike Wynn was working on something called DFC that is in the win32.zip archive on his web page. It may give you some ideas. Justin
 
 C
Oct 26 2003
next sibling parent reply "Matthew Wilson" <matthew-hat -stlsoft-dot.-org> writes:
I don't know if this is germane to your discussions, but with the D.win32
stuff I plan to try and keep things in a manageable form. For example, I
want to use a perl script applied to the latest SDK (I'm guessing this would
be an automated step at Walter's base prior to each release) which will
generate D.win32.error_codes.d, initially from WINERROR.H, but eventually
including other headers as well, e.g WINSOCK2.H. I'm not saying that all the
Win32 stuff should/could be automated in this way, but even just getting the
error codes automated in this way would be a big boost. It also relies on
segregating all the windows sections, but this could work just the same in D
as in C/C++, i.e. windows.d imports D.win32.error_codes & D.win32.XYZ, etc.
etc. This would make things manageable for the maintainers of the various
parts of the libraries, whilst continuing with the convenience of the users.


"J C Calvarese" <jcc7 cox.net> wrote in message
news:bnhkl0$2f2f$1 digitaldaemon.com...
 Charles Sanders wrote:
 Hey all,

 Ive bundled Y.Tomino's win32 headers together with winsock, some usable
 libraries , some contrib ( socket.d, depsrc.d ), and a help file (
useful
 only for finding what header for what function really ).  You can get it
 here www.atari-soldiers.com/win32.html .  I'd like to see this become
 standard, so please use it and report any findings.
I absolutely agree that we need to standardize on one set of Win32 headers. Are you familiar with Mike Wynn's Win32 work at converting headers (http://www.geocities.com/one_mad_alien/dcom_not_dcom.html)? I made a few minor fixes to Mike's work to resolve some conflicts with phobos's windows.d (http://jcc_7.tripod.com/d/win32.zip). I noticed something in Y. Tomino's efforts (in winbase.d): enum : uint { FILE_BEGIN = 0 } enum : uint { FILE_CURRENT = 1 } enum : uint { FILE_END = 2 } where Mike takes this approach... enum { FILE_BEGIN =0, FILE_CURRENT =1, FILE_END =2 } I think this indicates there are different approaches that can be taken. Tomino's files take up more space than Mike's files, so I think it probably is more comprehensive. There is certainly much overlap between the work of these two individuals. Doesn't dig contain some of this stuff? Also, re-defining things that are defined in windows.d can cause conflicts that we need to try to avoid.
 Its also bundled with dide .99 ( www.atari-soldiers.com/dide.html ),
added
 drag n drop, cleaned up some stuff.  Next release ill put to use Lars'
dep
 walker, ill try to release more often also.  Im still having that
problem
 with DIDE losing focus, then regaining focus and the caret is lost.  You
can
 find the MFC Scintilla bindings here
 www.atari-soldiers.com/mfc_scintilla.zip , with a sample program to
display
 the problem at www.atari-soldiers.com/ScintillaTest.zip .  Please help
if
 you can!

 Also, Im going to start on WinDy, some D bindings for win32 GUI's.  I
 mention this in case someone else has already started and we can
collobarate
 or I can offer some help.
Mike Wynn was working on something called DFC that is in the win32.zip archive on his web page. It may give you some ideas. Justin
 C
Oct 26 2003
parent "Charles Sanders" <sanders-consulting comcast.net> writes:
Y.T. has a perl script for just that, you might check it out :
http://hp.vector.co.jp/authors/VA028375/contents/D_windows.h.html

C
"Matthew Wilson" <matthew-hat -stlsoft-dot.-org> wrote in message
news:bnhlnp$2gii$1 digitaldaemon.com...
 I don't know if this is germane to your discussions, but with the D.win32
 stuff I plan to try and keep things in a manageable form. For example, I
 want to use a perl script applied to the latest SDK (I'm guessing this
would
 be an automated step at Walter's base prior to each release) which will
 generate D.win32.error_codes.d, initially from WINERROR.H, but eventually
 including other headers as well, e.g WINSOCK2.H. I'm not saying that all
the
 Win32 stuff should/could be automated in this way, but even just getting
the
 error codes automated in this way would be a big boost. It also relies on
 segregating all the windows sections, but this could work just the same in
D
 as in C/C++, i.e. windows.d imports D.win32.error_codes & D.win32.XYZ,
etc.
 etc. This would make things manageable for the maintainers of the various
 parts of the libraries, whilst continuing with the convenience of the
users.
 "J C Calvarese" <jcc7 cox.net> wrote in message
 news:bnhkl0$2f2f$1 digitaldaemon.com...
 Charles Sanders wrote:
 Hey all,

 Ive bundled Y.Tomino's win32 headers together with winsock, some
usable
 libraries , some contrib ( socket.d, depsrc.d ), and a help file (
useful
 only for finding what header for what function really ).  You can get
it
 here www.atari-soldiers.com/win32.html .  I'd like to see this become
 standard, so please use it and report any findings.
I absolutely agree that we need to standardize on one set of Win32 headers. Are you familiar with Mike Wynn's Win32 work at converting headers (http://www.geocities.com/one_mad_alien/dcom_not_dcom.html)? I made a few minor fixes to Mike's work to resolve some conflicts with phobos's windows.d (http://jcc_7.tripod.com/d/win32.zip). I noticed something in Y. Tomino's efforts (in winbase.d): enum : uint { FILE_BEGIN = 0 } enum : uint { FILE_CURRENT = 1 } enum : uint { FILE_END = 2 } where Mike takes this approach... enum { FILE_BEGIN =0, FILE_CURRENT =1, FILE_END =2 } I think this indicates there are different approaches that can be taken. Tomino's files take up more space than Mike's files, so I think it probably is more comprehensive. There is certainly much overlap between the work of these two individuals. Doesn't dig contain some of this stuff? Also, re-defining things that are defined in windows.d can cause conflicts that we need to try to avoid.
 Its also bundled with dide .99 ( www.atari-soldiers.com/dide.html ),
added
 drag n drop, cleaned up some stuff.  Next release ill put to use Lars'
dep
 walker, ill try to release more often also.  Im still having that
problem
 with DIDE losing focus, then regaining focus and the caret is lost.
You
 can
 find the MFC Scintilla bindings here
 www.atari-soldiers.com/mfc_scintilla.zip , with a sample program to
display
 the problem at www.atari-soldiers.com/ScintillaTest.zip .  Please help
if
 you can!

 Also, Im going to start on WinDy, some D bindings for win32 GUI's.  I
 mention this in case someone else has already started and we can
collobarate
 or I can offer some help.
Mike Wynn was working on something called DFC that is in the win32.zip archive on his web page. It may give you some ideas. Justin
 C
Oct 26 2003
prev sibling next sibling parent reply "Charles Sanders" <sanders-consulting comcast.net> writes:
Wow, lots of good stuff!  I hadnt realized so much had been done, is Mike
still actively working on these ?  This does awnser alot of my questions (
you <i>can</i> have a static method used for WndProc :D ) Ill use this as a
base.

So on the win32 stuff, whose are we going to use ?   How are we going to
decide ?  I think we ( we as the community of developers! ) need to decide
this ASAP.

C


"J C Calvarese" <jcc7 cox.net> wrote in message
news:bnhkl0$2f2f$1 digitaldaemon.com...
 Charles Sanders wrote:
 Hey all,

 Ive bundled Y.Tomino's win32 headers together with winsock, some usable
 libraries , some contrib ( socket.d, depsrc.d ), and a help file (
useful
 only for finding what header for what function really ).  You can get it
 here www.atari-soldiers.com/win32.html .  I'd like to see this become
 standard, so please use it and report any findings.
I absolutely agree that we need to standardize on one set of Win32 headers. Are you familiar with Mike Wynn's Win32 work at converting headers (http://www.geocities.com/one_mad_alien/dcom_not_dcom.html)? I made a few minor fixes to Mike's work to resolve some conflicts with phobos's windows.d (http://jcc_7.tripod.com/d/win32.zip). I noticed something in Y. Tomino's efforts (in winbase.d): enum : uint { FILE_BEGIN = 0 } enum : uint { FILE_CURRENT = 1 } enum : uint { FILE_END = 2 } where Mike takes this approach... enum { FILE_BEGIN =0, FILE_CURRENT =1, FILE_END =2 } I think this indicates there are different approaches that can be taken. Tomino's files take up more space than Mike's files, so I think it probably is more comprehensive. There is certainly much overlap between the work of these two individuals. Doesn't dig contain some of this stuff? Also, re-defining things that are defined in windows.d can cause conflicts that we need to try to avoid.
 Its also bundled with dide .99 ( www.atari-soldiers.com/dide.html ),
added
 drag n drop, cleaned up some stuff.  Next release ill put to use Lars'
dep
 walker, ill try to release more often also.  Im still having that
problem
 with DIDE losing focus, then regaining focus and the caret is lost.  You
can
 find the MFC Scintilla bindings here
 www.atari-soldiers.com/mfc_scintilla.zip , with a sample program to
display
 the problem at www.atari-soldiers.com/ScintillaTest.zip .  Please help
if
 you can!

 Also, Im going to start on WinDy, some D bindings for win32 GUI's.  I
 mention this in case someone else has already started and we can
collobarate
 or I can offer some help.
Mike Wynn was working on something called DFC that is in the win32.zip archive on his web page. It may give you some ideas. Justin
 C
Oct 26 2003
parent J C Calvarese <jcc7 cox.net> writes:
Charles Sanders wrote:
 Wow, lots of good stuff!  I hadnt realized so much had been done, is Mike
 still actively working on these ?  This does awnser alot of my questions (
 you <i>can</i> have a static method used for WndProc :D ) Ill use this as a
 base.
I suspect Mike's busy with real life (his most recent post was apparently at the end of September).
 
 So on the win32 stuff, whose are we going to use ?   How are we going to
 decide ?  I think we ( we as the community of developers! ) need to decide
 this ASAP.
 
 C
Oct 27 2003
prev sibling parent reply Y.Tomino <Y.Tomino_member pathlink.com> writes:
Are you familiar with Mike Wynn's Win32 work at converting headers
(http://www.geocities.com/one_mad_alien/dcom_not_dcom.html)?
It's more beautiful than mine :-) But I think covering all API is more important than beautiful. I'm using Perl. Handmade will make troubles and have limit. For example, Mike's doesn't have "AllocConsole" etc. Of course, if Mike can cover them, I'll stop. YT
Oct 27 2003
parent "Charles Sanders" <sanders-consulting comcast.net> writes:
Yes, I think the automation is most important.  On that fact I vote we keep
win32.lib as the standard, it can easily be updated as new SDK's come along

I am currently trying to modify Mike's DFC work to use win32.lib headers,
its nothing major really.

C

"Y.Tomino" <Y.Tomino_member pathlink.com> wrote in message
news:bnin5v$11j9$1 digitaldaemon.com...
Are you familiar with Mike Wynn's Win32 work at converting headers
(http://www.geocities.com/one_mad_alien/dcom_not_dcom.html)?
It's more beautiful than mine :-) But I think covering all API is more important than beautiful. I'm using Perl. Handmade will make troubles and have limit. For example, Mike's doesn't have "AllocConsole" etc. Of course, if Mike can cover them, I'll stop. YT
Oct 27 2003
prev sibling next sibling parent reply J Anderson <anderson badmama.com.au.REMOVE> writes:
Charles Sanders wrote:

Hey all,

Ive bundled Y.Tomino's win32 headers together with winsock, some usable
libraries , some contrib ( socket.d, depsrc.d ), and a help file ( useful
only for finding what header for what function really ).  You can get it
here www.atari-soldiers.com/win32.html .  I'd like to see this become
standard, so please use it and report any findings.

Its also bundled with dide .99 ( www.atari-soldiers.com/dide.html ), added
drag n drop, cleaned up some stuff.  Next release ill put to use Lars' dep
walker, ill try to release more often also.  Im still having that problem
with DIDE losing focus, then regaining focus and the caret is lost.  You can
find the MFC Scintilla bindings here
www.atari-soldiers.com/mfc_scintilla.zip , with a sample program to display
the problem at www.atari-soldiers.com/ScintillaTest.zip .  Please help if
you can!

Also, Im going to start on WinDy, some D bindings for win32 GUI's.  I
mention this in case someone else has already started and we can collobarate
or I can offer some help.

C

  
Just a note about the DIDE, the update for .98a didn't work ("Your DIDE application is currently up to date"), I had to download the new version from the webpage. -Anderson
Oct 26 2003
parent reply J Anderson <anderson badmama.com.au.REMOVE> writes:
J Anderson wrote:

 Charles Sanders wrote:

 Hey all,

 Its also bundled with dide .99 ( www.atari-soldiers.com/dide.html ), 
 added
 drag n drop, cleaned up some stuff.  Next release ill put to use 
 Lars' dep
 walker, ill try to release more often also.  Im still having that 
 problem
 with DIDE losing focus, then regaining focus and the caret is lost.  
 You can
 find the MFC Scintilla bindings here
 www.atari-soldiers.com/mfc_scintilla.zip , with a sample program to 
 display
 the problem at www.atari-soldiers.com/ScintillaTest.zip .  Please 
 help if
 you can!
Just a note about the DIDE, the update for .98a didn't work ("Your DIDE application is currently up to date"), I had to download the new version from the webpage. -Anderson
Also the .99 requires the user to re-enter known setting like the users name on re-install (over version .98a).
Oct 26 2003
parent reply "Charles Sanders" <sanders-consulting comcast.net> writes:
 Also the .99 requires the user to re-enter known setting like the users
 name on re-install (over version .98a).
Ok ill fix it thanks. Im disabling the Update feature for now untill I can devote enough time to keep up with it. C P.S. I noticed in Y.T's lib everything is defaulted to Unicode, im going to wrap them in version statements and update soon. "J Anderson" <anderson badmama.com.au.REMOVE> wrote in message news:bni539$4tr$1 digitaldaemon.com...
 J Anderson wrote:

 Charles Sanders wrote:

 Hey all,

 Its also bundled with dide .99 ( www.atari-soldiers.com/dide.html ),
 added
 drag n drop, cleaned up some stuff.  Next release ill put to use
 Lars' dep
 walker, ill try to release more often also.  Im still having that
 problem
 with DIDE losing focus, then regaining focus and the caret is lost.
 You can
 find the MFC Scintilla bindings here
 www.atari-soldiers.com/mfc_scintilla.zip , with a sample program to
 display
 the problem at www.atari-soldiers.com/ScintillaTest.zip .  Please
 help if
 you can!
Just a note about the DIDE, the update for .98a didn't work ("Your DIDE application is currently up to date"), I had to download the new version from the webpage. -Anderson
Also the .99 requires the user to re-enter known setting like the users name on re-install (over version .98a).
Oct 26 2003
parent reply demoonlit inter7.jp writes:
I noticed in Y.T's lib everything is defaulted to Unicode, im going to wrap
them in version statements and update soon.
Wait...make me do it ! There are some symbols not only "UNICODE". I'm looking, they are entangled intricately in #if. I selected to resolve #if on stage of Perl instead of version statement. (I've tried using version statement for all symbols, but it's more complex than I thought.) If you wanted the ANSI-version, I'll re-run the script. YT
Oct 27 2003
parent reply "Charles Sanders" <sanders-consulting comcast.net> writes:
Could you re-run it ?

Is it possible to have the perl script , once it sees a unicode statement,
wrap it in a version statement ?

C


<demoonlit inter7.jp> wrote in message
news:bnijpc$rjt$1 digitaldaemon.com...
I noticed in Y.T's lib everything is defaulted to Unicode, im going to
wrap
them in version statements and update soon.
Wait...make me do it ! There are some symbols not only "UNICODE". I'm looking, they are entangled intricately in #if. I selected to resolve #if on stage of Perl instead of version statement. (I've tried using version statement for all symbols, but it's more complex
than
 I thought.)
 If you wanted the ANSI-version, I'll re-run the script.

 YT
Oct 27 2003
parent reply "Y.Tomino" <demoonlit inter7.jp> writes:
Could you re-run it ?
Yes. I tried to make some A-versions today. win32\ansi\winuser.d, etc. (http://hp.vector.co.jp/authors/VA028375/contents/D_windows.h.html)
Is it possible to have the perl script , once it sees a unicode statement,
wrap it in a version statement ? No. Version statement can't have complex expression. For example, windef.h has this #if. #if (!defined(_MAC)) && ((_MSC_VER >= 800) || defined(_STDCALL_SUPPORTED)) it shold be converted ... version(_MAC) else{ version(_MSC_VER >= 800 /*invalid*/ ){ version = MAC_and_MSC_VER_ge800_or_STDCALL_SUPPORTED; }else version(_STDCALL_SUPPORTED){ version = MAC_and_MSC_VER_ge800_or_STDCALL_SUPPORTED; } } if(MAC_and_MSC_VER_ge800_or_STDCALL_SUPPORTED){ ... I gave up use of a version statement. Please think this pattern. It's impossible to give special treatment only to "UNICODE". #if defined(UNICODE) #define XXX #endif #if EXPRESSION-USING-XXX ... #endif YT
Oct 27 2003
parent "Charles Sanders" <sanders-consulting comcast.net> writes:
 #if defined(UNICODE)
 #define XXX
 #endif

 #if EXPRESSION-USING-XXX
 ...
 #endif
Ahh good point. Hmm , i guess two seperate libs : win32u.lib, win32a.lib , will be ok ? C "Y.Tomino" <demoonlit inter7.jp> wrote in message news:bnk066$ao2$1 digitaldaemon.com...
Could you re-run it ?
Yes. I tried to make some A-versions today. win32\ansi\winuser.d, etc. (http://hp.vector.co.jp/authors/VA028375/contents/D_windows.h.html)
Is it possible to have the perl script , once it sees a unicode
statement,
 wrap it in a version statement ?
 No.

 Version statement can't have complex expression.
 For example, windef.h has this #if.

 #if (!defined(_MAC)) && ((_MSC_VER >= 800) || defined(_STDCALL_SUPPORTED))

 it shold be converted ...

 version(_MAC)
 else{
   version(_MSC_VER >= 800 /*invalid*/ ){
     version = MAC_and_MSC_VER_ge800_or_STDCALL_SUPPORTED;
   }else version(_STDCALL_SUPPORTED){
     version = MAC_and_MSC_VER_ge800_or_STDCALL_SUPPORTED;
   }
 }
 if(MAC_and_MSC_VER_ge800_or_STDCALL_SUPPORTED){
   ...

 I gave up use of a version statement.

 Please think this pattern.
 It's impossible to give special treatment only to "UNICODE".

 #if defined(UNICODE)
 #define XXX
 #endif

 #if EXPRESSION-USING-XXX
 ...
 #endif

 YT
Oct 27 2003
prev sibling parent reply "Andrew Edwards" <edwardsac spamfreeusa.com> writes:
Charles...

The link to digcmod is broken. Numberous errors occur in DIDE 0.99 which I
can only attribute to the missing digcmod files until I can install them and
observe the results.

Regards,
Andrew
Oct 26 2003
parent "Charles Sanders" <sanders-consulting comcast.net> writes:
Sorry fixed.

C
"Andrew Edwards" <edwardsac spamfreeusa.com> wrote in message
news:bni7i8$8e8$1 digitaldaemon.com...
 Charles...

 The link to digcmod is broken. Numberous errors occur in DIDE 0.99 which I
 can only attribute to the missing digcmod files until I can install them
and
 observe the results.

 Regards,
 Andrew
Oct 26 2003