"Chrome legacy Window" when launching chrome with RunAs - google-chrome

I am trying to use MSAA (on Win7) to get the addressbar in chrome browser and replace it with a different url. When chrome is launched normally (as the loggedon user), I am able to find the addressbar using the IAccessible interface by traversing through the UI tree of the window classes owned by the process.
However, if I launch chrome as a different user (by using RunAs in windows), I see window with name, "chrome legacy window" when going through the classes owned by the "RunAs" process. The window hierarchy and the content within is vastly different from what I see if I scan the process that is running as the logged on user.
Although I can see (window classnames) Chrome_WidgetWin_0 & Chrome_WidgetWin_1 in both the browser instances, only the one running as the current user is giving access to the address bar.
Any idea on what is happening when chrome is launched as a different user? Is there any workaround or should I be looking at a different technology?

As Penn has noted this may have something to do with the PDF view which has caused peculiar problems in the strangest of places.
Looking at the bug tracker here it looks like sporadic behaviour with PDFs and the "legacy window" has been introduced in a recent build so perhaps try rolling back to an earlier version of Chrome.
Also I presume you are using chrome://accessibility with
Global accessibility mode: on
Show internal accessibility tree instead of native: on
or starting chrome with the flag --force-renderer-accessibility it seems to be a prerequisite for other automation programs like autoit as seen here.
If you can't get this method working I'd recommend trying the autoit script there.
Here is an autoit code example that shows grabbing the address bar and using it for general navigation, upon other things!

I have found that if a PDF file is open in the chrome viewer (in some versions of chrome) the window you referred to appears. Please confirm what URL is being used when you open chrome.
I have also read that a password request prompt can cause the same window to open. The PDF window only appears if the window is launched by certain processes/users

Related

Facing issue while trying to run Robot framework script in google chrome browser

I am facing a Chrome popup while trying to run Robot Frame work script:
Microsoft Security Essentials wants to restore your Chrome settings to their
original defaults.
This will reset your homepage, new tab page and
search engine, disable your extensions, and unpin all tabs. It will
also clear other temporary and cached data, such as cookies, content
and site data.
In chrome extension, my developer mode is unchecked, whereas it should be checked.
The Robot Framework automation script is just to open the google Chrome browser and load google search page.
I am using Win 7 Home Basic OS.
I have attached screenshots.
It appears that most Chrome support specialists will ask you to run an anti-malware tool to verify that your system is running normally. These can be found by searching on the popup message.
One Reddit user commented that in his case the problem was resolved by altering the Windows registry:
I finally found a fix for this. There is a setting in the registry
that's causing it.
In the registry it's under
HKEY_CKU\CURRENT_USER\Software\Google\Chrome\TriggeredReset
Delete the TriggeredReset key and then close regedit. Fixed.
This is an API for 3rd party programmers who want to create cleaning
tools. But if the tool isn't written properly, the triggered reset
never gets deleted and we have it always asking.

How to turn off windows integrated authentication in Chrome

I used to be able to disable windows integrated authentication by updating the settings in IE. Recently this no longer works. Has something changed in recent versions of chrome? Is there a new way to turn this off?
Chrome version 46.0.2490.71
I used to use this setting in IE
Internet Options -> Advanced -> uncheck 'Enable Windows Integrated Authentication'
I got this response from an internal admin and it seems to work.
I think the best we came up with was to create a shortcut to
chrome.exe on your desktop and modify the target of the shortcut to be
something like:
"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --auth-server-whitelist="_"
Edit: Corrected the path for misplaced backslashes. Note also the (x86), just in case.
Expanding on Daniel Trimble's answer, which worked for me:
I would like to help more people find this useful answer by adding a little more context. What is Integrated Windows Authentication, and why would you want to disable it?
Basically, Integrated Windows Authentication allows a browser such as Chrome to access credentials that are stored on your computer (for example, the password you use to log into your office computer) and use those same credentials to log you into a website (for example, a password-protected portion of your company's website). This occurs behind the scenes, without a visible password prompt.
The problem is that you may not want to be automatically logged into a particular website.
Example: I like to use Chrome as a test browser to see the "public" view of my company's website. Generally I log into our site in Firefox or IE, make changes there, and then view the site in Chrome to make sure my changes were "published" as intended.
Suddenly, one day, I could no longer stay signed out of my company's website in Chrome. Whenever I navigated to a password-protected page, instead of giving me a login prompt, Chrome would automatically sign me in to Microsoft SharePoint (my company's content-management system) and show me the "logged in" version of that page.
If something similar is happening to you, there are other, more obvious things you should try first. Start by clearing your saved passwords (Chrome menu button > Settings > Show advanced settings > Passwords and forms > Manage passwords).
Clearing my saved passwords didn't work for me, so I tried other things: cleared the cache, removed all cookies, reset Chrome's settings, uninstalled and reinstalled Chrome. I even visited a password-protected page in an Incognito window, but Chrome still signed me in automatically.
Finally I found this Stack Overflow page, which solved the problem. (Thank you, Daniel Trimble!) Integrated Windows Authentication was the culprit. IWA used to be turned off by default in Chrome; you had to enable it via a checkbox in your Internet Options (shared with IE). At some point in the recent past, Google apparently decided to enable IWA by default. The unfortunate part is that they did not provide an option under Chrome's Settings panel to disable it. At least there's this workaround!
How to disable Integrated Windows Authentication (IWA) for Chrome via Windows' Control Panel:
(This applies to both Internet Explorer and Chrome since Chrome uses system settings that are managed using Internet Explorer.)
Press Windows' Start button, type "Internet Options" to search, and click the one result, from the control panel
Go to the "Security" tab
Select "Local Intranet" and click on "Custom Level" button
Scroll to the "User Authentication" section at the bottom of the list and select "Prompt for user name and password"
Click Ok, Apply, and Ok to save changes
Close all instances of the IE browser to make the changes effective. Launch the browser again and access the application. A basic authentication challenge will be served.
Source: https://sso.cisco.com/autho/msgs/disable_IWA.htm
I found out we had a windows policy that set the following registry key:
HKEY_CURRENT_USER\Software\Policies\Google\Chrome\AuthServerWhitelist
Deleting this key made Chrome prompt for a username and password for me.
More information about the registry keys.
Great and all the above answers work perfect.!
To add more -- I found that google chrome (version 68.0.3440.106) has the GUI option for Windows integrated authentication, just like in IE, this worked for me :)
goto chrome://settings/
Show advanced settings...
In the "Network" section, click on "Change proxy settings..."
Chrome opens the internet properties window
in the security tab
Select Local Intranet and Click on "Custom Level" button
Scroll to bottom of the window to User Authentication section, select "Prompt for user name and password"
Click Ok, Apply and Ok to save changes.
close existing session and start a new chrome session.

Chrome extensions and bookmarks disabled using Brackets.io

The question is regarding Bracket.io with Chrome as the default browser.
When using the option "Live Preview" Chrome browser opens with the live document, but does not show me the extensions and bookmarks that I have installed on my browser.
This is when Chrome opens Brackets Live Preview:
This is when I open it myself (with extensions and bookmarks but without automatic updates), which is how I would like to have it:
How I set it to open Chrome with my bookmarks and extensions?
Brackets Live Preview uses a separate Chrome profile from your regular copy of Chrome. It starts out as a completely clean new profile, so it won't have any of your regular bookmarks, etc. But Live Preview reuses that same profile on each subsequent launch -- so if you add bookmarks to the window Live Preview is running in, they'll reappear the next time you use Live Preview.
There are a couple good reasons for this, and also one way to work around it that's become available recently.
Quoting from my answer to "Why does Brackets open a new instance of chrome when using Live Editor?":
The Chrome profile that Brackets launches for Live Preview has the
Chrome Remote Debugging
API
enabled. There are two reasons Brackets uses a separate profile for
this:
Remote Debugging is off by default, and enabling it requires re-launching Chrome. Using a separate profile means your existing
browsing session doesn't have to be restarted, which would be
disruptive if you have lots of tabs open.
It reduces security slightly -- other processes on your local machine could use the Remote Debugging API to monitor / interfere
with other browsing you do in this Chrome window. (The API is not
exposed to the network, so if you trust your computer to be
malware-free, this is less of a concern).
If you don't like having to open a separate Chrome window, you can
check File > Enable Experimental Live Preview to try out a new Live
Preview implementation that doesn't require the Remote Debugging API,
and thus doesn't launch a new copy of Chrome. You can't use this
option if your project has a custom server URL set, though.
This is by design, as it sets various flags needed for remote debugging.
See this issue report on GitHub: https://github.com/adobe/brackets/issues/8653
In your first Chrome Browser : If you don't have chrome account, please SignUp and Login. All of your Chrome Preference will be save in your account.
Then, in Brackets's Chrome Browser you have to login to Show all of your Chrome extensions
& Bookmarks.

Google Chrome --new-window switch ignores --window-position and --window-size

I'm trying to control the size and position of newly spawned Google Chrome windows via the command line (through C#.)
My command line ends up looking like:
--new-window --window-position=100,100 --window-size=800,600 www.UrlToOpen.com
However, the new window just opens over top of where the last Chrome window was started.
The end result I'm looking for is to be able to start multiple instances of Google Chrome, in separate windows, with a specific location and size. The only way I've been able to do this so far is by specifying that each instance is to have it's own --user-data-dir. However, this is not ideal given how many extensions a user may have installed, and it would not be the best user experience.
Does anyone have any suggestions?
If Chrome is not programmed to allow this, you only have one option.
Create the process and keep the process object.
Use Process.MainWindowHandle to get the newly created window (you might need to use a loop and Process.Refresh, or Process.WaitForInputIdle)
Use the SetWindowPos native function to position the window wherever you want it.
Native hooks could be used to detect creation of the window, but that requires you to create an unmanaged DLL.
I have another idea for you, why not use a chrome extension for handling the positioning.
Background: We had related difficulties. Internal webapp that opens multiple documents in windows, and need to be placed in other monitors.
The javascript does not support this, for security reasons and only a native extension can properly work with the tabs/windows objects.
Therefore, we have created an open source chrome extension for doing exactly that: flexible windows position across multi-monitor setups.
Perhaps more interest to you would be the feature to use predefine templates. The template file is located in any webserver you like and therefore can be easily share across different users.
The chrome extension is called "MultiWindow Positioner" and its complete free. You can get it at the chrome store here
The actual source code you find in github in the project chrome-multiwindow-positioner
Disclaimer: I am the maintainer of the open source (MIT) github project. If there any interesting idea, or comments feel free to share them here.

Google Chrome Application Mode: Possible to isolate multiple instances?

I want to run multiple Google Chrome application windows logged into the same web site (Twitter.com, say), each with different credentials. Is this possible? If so, how?
My initial testing shows that multiple Chrome app windows are not sufficiently isolated to do this. Logging into the second account logs me into the second account in both windows, suggesting that they are sharing information just as two Chrome tabs might.
You can use a Chrome "Incognito" window for this.
As you've found, Chrome windows are (like in most browsers) just groupings for tabs, not an authentication barrier.
look for a plugin called "swap my cookies"
You can't do that with chrome Incognito windows.
Take a look here: http://code.google.com/p/chromium/issues/detail?id=24690.
So that's right you can create only two isolated session: one incognito and one normal.
See the latest post:
Although it's an extension / plug-in and not in core Chromium, MultiLogin has been working quite well for me: https://chrome.google.com/webstore/detail/nccllfnllopfpcbjdgjdlfmomnfgnnbk
It can open new tabs, each with their own cookie jar.