On approximately 11/19/2009 12:22 AM, came the following characters from 
the keyboard of Wolfgang Hugemann:
> Thank you for this hint; I didn't know that.
>
> I have just tested it and found that you may as well directly start a DOS 
> shell window with the option "/V:on".
>    

Sure, if you use Run or something.  I chose to describe something I was 
pretty sure anyone would be able to follow.


> I however don't think that is is recommendable to rely on code which uses 
> "!variable!", because there are other ways to invoke batch file processing, 
> like Drag&  Drop or SendTo. And these start the CMD shell without this option.
>    

You can test for the /v:on option being set, and have the batch file 
self-invoke itself, using /v:on the second time, to be safe...

> Or is there a way that ensures that a DOS shell is always started with the 
> option "/V:on"?
>    

Or you can set the registry entry that turns /v:on unconditionally, as 
documented in the help text I pointed at in my first response.

> Greetings from Germany
> Wolfgang Hugemann
>
> ----- original Nachricht --------
>
> Betreff: Re: [magick-users] Titelling image array in montage -- German umlauts
> Gesendet: Mi, 18. Nov 2009
> Von: Glenn Linderman<[email protected]>
>
>    
>> On approximately 11/18/2009 12:58 AM, came the following characters from
>> the keyboard of Wolfgang Hugemann:
>>      
>>> The problem occurs in the last line of "c.bat", where German umlauts are
>>>        
>> interchanged by crude characters. Is there any means by which I can instruct
>> montage to use a certain coding for the text supplied in "title.txt"?
>>      
>>>        
>> I can't help here, sorry. But...
>>
>>      
>>> ........................
>>>
>>> I will now shortly explain what's happening in the batch files, although
>>>        
>> this is not neccessary to understand my problem:
>>      
>>> The two batch files are placed in the root directory of the tree and are
>>>        
>> called from there.
>>      
>>> The FOR loop in the first batch file runs through the directory tree,
>>>        
>> filters all directory names containing the string "digibis" and passes each
>> of these directories to C.BAT as the single command line parameter.
>>      
>>> C.BAT increases the environment variable COUNT, echoes the directory name
>>>        
>> into TITLE.TXT (which is necessary because of the backslash used in Windows
>> pathnames, which would otherwise be considered as starting an escape
>> sequence).
>>      
>>> MONTAGE then generates an index print of all images in the subdirectory
>>>        
>> and stores it in the file N.JPG in the root directory, with N being an
>> integer number.
>>      
>>> Please note that the operation performed in C.BAT cannot be performed
>>>        
>> within the FOR loop, even not if bracketed by parantheses "(", ")": The
>> environment variable COUNT would not be increased while running the FOR loop
>> (for reasons that I could not figure out...).
>>      
>>>        
>> Here's a sample batch file to demonstrate the issue regarding count. The
>> problem with count is that %environment variables% in the for command,
>> the whole thing, regardless of how many () lines, are substituted at the
>> time the for command is parsed. Then those lines are used by the loop.
>>
>> Start a cmd, then start another with the following command
>>
>> cmd /v:on
>>
>> In that nested cmd, run the following lines as a batch file:
>>
>> @echo off
>> set count=0
>> for %%a in (a b c) do (
>> set /A count+=1
>> echo normal count %count% %%a
>> echo deferred count !count! %%a
>> )
>> echo final count %count%
>> echo final deferred count !count!
>>
>> For explanation, see
>>
>> cmd /?
>>
>> and look for "deferred environment variable expansion" both in the
>> option list (/v) and in a later paragraph that begins with those words.
>>
>> So as you see, the count was getting incremented by the loop, but the
>> %expansion% had already taken place, so the initial value of count had
>> already been substituted into the loop commands before the count had
>> been incremented.
>>
>>      
> --- original Nachricht Ende ----
>
>
> _______________________________________________
> Magick-users mailing list
> [email protected]
> http://studio.imagemagick.org/mailman/listinfo/magick-users
>
>    
_______________________________________________
Magick-users mailing list
[email protected]
http://studio.imagemagick.org/mailman/listinfo/magick-users

Reply via email to