PDA

View Full Version : VC++ Internal State Error



NewsArchive
06-26-2005, 08:49 AM
I added:

Define Wizard Dialog #1 (ListBox)

and I got the following Error.

I placed %_SB_RETURNEX% on the "ListBox Text" field -- which should contain
the returned values from the "Check In-use Folder Tree.

I need to be able to load the Listbox with this and it causes the error.

-Robert

Set Variable %IQ_FILES_INUSE% to Check In-use Folder Tree "%_SB_INSTALLDIR%"
If %IQ_FILES_INUSE% Equals "1" Then
Define Wizard Dialog "#1" (List Box)
Define Wizard Dialog "#2" (Finish)
Loop Wizard
Wizard Auto Break
End
Exit Installation
End

NewsArchive
06-26-2005, 08:49 AM
Hello,

I tested this out some more and with ONE object in-use, and it works
properly.

It seems the buffer cannot handle an opened application. An open application
contains maybe 17 DLL's, about 10 Clarion DLL's, and maybe 100 TPS files,
some other theme files, GIF files, etc.

Anyway, the LISTBOX Text Field should be able to handle maybe at least 1000
files, to be safe? And then, if over 1000 ... just ignore the rest and trap
for the exception error. I don't know if the error is number of entries,
or the actual string length causing the C++ Exception error. If that be the
case, it seems like that return variable has to increased to at least 32K,
if not 64K - the max string size.

ISSUE #2
-----------
One thing I'm also noticing is, if you place %_SB_RETURNEX% at a listbox
entry, from "In-Use Files", it always places ONE BLANK Line at the beginning
of the list. Hopefully, that can be resolved.

I think the string is being loaded as:

INUSESTRING = INUSESTRING & '|' & CLIP(FIL:NAME)

when it should be loaded as:

if inusestring
INUSESTRING = INUSESTRING & '|' & CLIP(FIL:NAME)
else
INUSESTRING = CLIP(FIL:NAME)
end

So as to avoid the extra beginning pipe "|" which is probably causing the
blank entry in the listbox.

-Robert

NewsArchive
06-26-2005, 08:49 AM
Hello Again .. .Sick of me yet? Don't answer that ...

Ok, in an effort to fix this myself, I found another issue, but it does not
work:

Set Variable %IQ_FILES_INUSE% to Check In-use Folder Tree
"%_SB_INSTALLDIR%"
Message Box "%_SB_RETURNEX%" -- "DEBUG"
Set Variable %_SB_RETURNEX% to SUB(%_SB_RETURNEX%,2,64000) (Evaluate
Expression)
Message Box "%_SB_RETURNEX%" -- "DEBUG"


The first time, it shows:

|files #1|files #2

The second time it runs, it shows 1773677

When I see "Evaluate Expression", then I think/assume it is Clarion Syntax -
but it does say in help text "arithmetic calculations" - so, with that
said, maybe add a SUBSTRING function? :-)

I'll pull out the code if you can fix the In-Use, or if you can't, you can
allow the SUB to work here.

NewsArchive
06-26-2005, 08:49 AM
Hi,

I found "String Functions" which does what I need. I suggest a couple of
things because it seems it is not intuitive - I wanted to set a variable -
ie: make it something, so I went in and selected Set Variable. It really
seems like it did what I wanted. I didn't know to look at "String
Functions" because "Set a Variable" seems to be an ACTION while "STRING
Functions" seems to be a "Noun" or something.

Suggestion:

1. Change the online help "Set a Variable" to say "See Also String
Functions" and in the "String Functions", add a "See Alow Set a Variable".
Then, the user would find their way easier to the solution. I now figured
I can use "MID" and all is set now.

2. String functions listbox does not handle Clear Type Font.

-Robert

NewsArchive
06-26-2005, 08:49 AM
Issue #2 is in review.

Thanks,
Friedrich

--
Friedrich Linder
CEO, Lindersoft
www.lindersoft.com
1.954.252.3910

"point. click. ship" - that's SetupBuilder 5

NewsArchive
06-26-2005, 08:50 AM
Item in review, thank you. I already have some "buffer overrun protection"
code in place - for whatever reason this seems to fail :-(

Friedrich

--
Friedrich Linder
CEO, Lindersoft
www.lindersoft.com
1.954.252.3910

"point. click. ship" - that's SetupBuilder 5