Link to home
Start Free TrialLog in
Avatar of hidrau
hidrauFlag for Brazil

asked on

How to open a new windows chrome resized and disabled the toolbar?

Hello guys,

I need to call a new google chrome window in size 500 x 500, toolbar disable,

I am trying some codes that I found but I am not having success.

I can open a new windows, it is ok. Ā But I can't open it in my size 500, 500, when the windows is created, if I have one open, the new windows is created with the same size.

this is my simple code, please take a look at this:

unit Unit1;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.Buttons, StrUtils, ShellApi;

type
  TForm1 = class(TForm)
    BitBtn1: TBitBtn;
    Label1: TLabel;
    Edit1: TEdit;
    procedure BitBtn1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

function crGetDefaultBrowser: string;
var
  Path: array [0 .. 255] of char;
  Buff: array [0 .. 255] of WideChar;
  Filename: PWideChar;
  crGetTempPath: string;
begin
  GetTempPath(255, Buff);
  crGetTempPath := Buff;
  Filename := PWideChar(crGetTempPath + 'default.html');
  CloseHandle(CreateFile(Filename, GENERIC_WRITE, FILE_SHARE_WRITE, nil, CREATE_ALWAYS,
    FILE_ATTRIBUTE_NORMAL, 0));
  FindExecutable(Filename, nil, Path);
  DeleteFile(Filename);
  Result := Path;
end;

function crOpenBrowser(url: string): LongWord;
var
  Startupinfo: TStartupInfo;
  Processinfo: Tprocessinformation;
begin
  Fillchar(Startupinfo, Sizeof(Startupinfo), #0);
  Startupinfo.cb := Sizeof(Startupinfo);
  Startupinfo.dwFlags := STARTF_USESHOWWINDOW or STARTF_FORCEONFEEDBACK;
  Startupinfo.wShowWindow := SW_SHOWNORMAL;

  if not Createprocess(nil, PWideChar(crGetDefaultBrowser + '  --cast-initial-screen-height=300 --cast-initial-screen-width=300 --window-position=20,20  --window-size=300,300 --new-window --url=' + ' ' + url ), nil, nil, False,
    CREATE_NEW_CONSOLE or NORMAL_PRIORITY_CLASS, nil, nil, Startupinfo, Processinfo) then
    Result := WAIT_FAILED;

  if Processinfo.Hprocess <> 0 then
    CloseHandle(Processinfo.Hprocess);
  if Processinfo.Hthread <> 0 then
    CloseHandle(Processinfo.Hthread);
end;

//http://peter.sh/experiments/chromium-command-line-switches/


procedure TForm1.BitBtn1Click(Sender: TObject);
begin

  crOpenBrowser('www.bol.com.br');

end;

end.

Open in new window



here you can get the chrome parameter list
http://peter.sh/experiments/chromium-command-line-switches/#window-size

and here you can get some examples as it could be in other language:
https://github.com/s-haines/chrome-window-positioner/blob/master/src/main.js

I appreciate a lot a help on this
Alex
SOLUTION
Avatar of Geert G
Geert G
Flag of Belgium image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
ASKER CERTIFIED SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of hidrau

ASKER

Thanks a lot