Thanks for the suggestion, but the DISPLAY (Windows Control Panel) was already 
set to 32-bits.

Does either of the provided scripts work for you and produce a picture other 
than the blank-screen message?


--- In [email protected], "amibroker" <gro...@...> wrote:
>
> Hello,
> 
> ExportImage works perfectly fine. The only thing you should do is to
> set  your DISPLAY (Windows Control Panel) TO 24-bits or 32-bits (TRUE COLOR). 
> You need true color display to be able to export 24-bit PNGs.
> 
> True color display is default for all new installation of Windows Vista and 7 
> because it is required for some visual effects new Windows use.
> 
> Best regards,
> Tomasz Janeczko
> amibroker.com
> 
>   
> 
> --- In [email protected], Progster <progster@> wrote:
> >
> >    Hi,
> > 
> > Is is possible that the AB OLE Automation Object Model call 
> > ExportImage() is broken in AB 5.30.4?
> > 
> > Despite everything I could think of to try, the images always come out 
> > blank, like those attached.
> > 
> > Neither of the codes below work, and yet each was said to work on the 
> > list in the past.
> > 
> > Operational attempts have included:
> > 
> > AB Open        Dbl-Click on script
> > AB Open        Run script from command window
> > 
> > AB Closed        Dbl-Click on script
> > AB Closed        Run script from command window
> > 
> > Results are always either:   server error, AB crash, or it runs and 
> > produces the blank chart.
> > 
> > When AB is open, it doesn't matter what layout/chart is up.   Still no joy.
> > 
> > What could be (not) happening here???
> > 
> > - Progster
> > 
> > 
> > -----------
> > 
> > //    ImageTest_01.js
> > AB = new ActiveXObject("Broker.Application");
> > AB.ActiveWindow.ExportImage( "test.gif", 640, 480 );
> > 
> > 
> > //    ImageTest_02.js
> > 
> > iWatchList = 8;     ///    you can define watch list number here
> > 
> > AB = new ActiveXObject("Broker.Application");
> > Qty = AB.Stocks.Count;   for( i = 0; i < Qty; i++ )
> > {
> >       Stk = AB.Stocks( i );
> >       if( iWatchList < 32 )
> >       {
> >         if( Stk.WatchListBits & ( 1 << iWatchList ) )
> >         {
> >          Doc = AB.Documents.Open( Stk.Ticker );
> >          WScript.Sleep( 4000 ); // 4 seconds delay
> >           AB.ActiveWindow.ExportImage(Stk.Ticker + ".png")
> >          Doc.Close();
> >         }
> >       }
> >       else
> >       {
> >         if( Stk.WatchListBits2 & ( 1 << ( iWatchList - 32 )) )
> >         {
> >          Doc = AB.Documents.Open( Stk.Ticker );
> >          AB.ActiveWindow.ExportImage(Stk.Ticker + ".png")
> >          WScript.Sleep( 4000 ); // 4 seconds delay
> >          Doc.Close();
> >         }
> >       }
> > }
> >
>


Reply via email to