www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - DmdTreeView (winsamp3.exe) only runs on some computers

reply "Lynn Allan" <l_d_allan adelphia.net> writes:
<alert comment="newbie">

For a prospective freeware app, I've been attempting to get the Win32 native
TreeView widget to work. The current phobos std.c.windows.windows.d only
includes support for the basic widgets (buttons, text fields, checkboxes,
etc.)

I started with winsamp.d, and "cloned" std.c.windows.windows.d to
windows_tree.d. This file defines the constants and structures to make calls
to the Win32 api for creating and handling the native TreeView control.

Eureka, it is starting to actually work ...

Except ... for me but not everyone. Sigh.

Another person is having problems getting winsamp3.exe to run. JCC
experiences the error message noting that the "ChapSelectorTree was not
created" which indicates that the call to
std.c.windows.windows.CreateWindowA failed.

winsamp3.exe is a 75kb file that should be self-contained except for calls
to msvcrt.dll and gui32.dll. It runs fine on three of my home computers,
including Xp-Home and Win2000 (one of which is a test computer with not much
beyond a baseline installation).

Has anyone had success or problems getting the winsamp.d code to work [comes
with dmd download]? There is more description of the problem and a link to
the Visual Studio 98 project at:
http://dsource.org/forums/viewtopic.php?t=351
http://berbible.sourceforge.net/misc/DmdTreeView.zip

We would greatly appreciate it if someone would download the above and
attempt to invoke winsamp3.exe. The zip file contains winsamp3.exe, as well
as winsamp3.d, [dmd_install-dir]\src\phobos\std\c\windows\windows_tree.d,
winsamp3.def, winsamp3.dsw, and winsamp3.dsp

Did I do something wrong, or leave out something?

</alert>
Sep 14 2004
parent J C Calvarese <jcc7 cox.net> writes:
Lynn Allan wrote:
 Another person is having problems getting winsamp3.exe to run. JCC
 experiences the error message noting that the "ChapSelectorTree was not
 created" which indicates that the call to
 std.c.windows.windows.CreateWindowA failed.

I think I discovered the problem: InitCommonControls() should be called. I presented details of my solution at dsource: http://www.dsource.org/forums/viewtopic.php?p=2219#2219 -- Justin (a/k/a jcc7) http://jcc_7.tripod.com/d/
Sep 14 2004