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(); > > } > > } > > } > > >
