anchor.diff:  begin
     if Assigned(FBin) then
     begin
  -    FBin.OpenStream(nil, False);
  +    FBin.OpenStream(nil, False); //ARedraw=False to not paint on Win desktop with DC=0
  +    FreeAndNil(FBin);
  +  end;
  +
  +  if Assigned(FBinStream) then
       FreeAndNil(FBinStream);
  -    FreeAndNil(FBin);
  -  end;
  +
  +  if Assigned(FImageBox) then
  +    FreeAndNil(FImageBox);
   
     Ed1.AdapterForHilite:= nil;
     Ed2.AdapterForHilite:= nil;
  
positive.code:   Splitter.Hide;
    ReadOnly[Ed1]:= true;
  
    if Assigned(FBin) then
      FBin.OpenStream(nil);
    if Assigned(FBinStream) then
      FreeAndNil(FBinStream);
    FBinStream:= TFileStream.Create(AFileName, fmOpenRead or fmShareDenyWrite);
  
    if not Assigned(FBin) then
    begin
      FBin:= TATBinHex.Create(Self);
      FBin.OnKeyDown:= @BinaryOnKeyDown;
  
negative.code:     FBin.TextPopupCaption[vpCmdSelectAll]:= cStrMenuitemSelectAll;
    end;
  
    if Assigned(FBinStream) then
      FreeAndNil(FBinStream);
    FBinStream:= TFileStream.Create(AFileName, fmOpenRead or fmShareDenyWrite);
  
    ViewerApplyTheme(FBin);
    FBin.Show;
    FBin.Mode:= AMode;
    FBin.OpenStream(FBinStream);
  
    if Visible and FBin.Visible and FBin.CanFocus then
      FBin.SetFocus;
  
    DoOnChangeCaption;
  