Skip to content
This repository has been archived by the owner on Jun 21, 2023. It is now read-only.

"Open in Visual Studio" doesn't open VS on Windows 7 #1540

Open
bchavez opened this issue Mar 19, 2018 · 6 comments
Open

"Open in Visual Studio" doesn't open VS on Windows 7 #1540

bchavez opened this issue Mar 19, 2018 · 6 comments

Comments

@bchavez
Copy link

bchavez commented Mar 19, 2018

Ola, @meaghanlewis, regarding #1539:

  • GitHub Extension for Visual Studio version:
    37543945-8812eca4-2920-11e8-8501-48c954dc7375

  • Visual Studio version:
    37498873-ee9cfc9c-287d-11e8-964c-0c90fe7b2042


Screen recording:

37549230-407bd26e-293b-11e8-9b1f-c92ca5d16d4b


Steps to reproduce:

  • Fresh Windows 7 VM install with latest updates.

  • Installed Chrome as Default Browser:
    vmware_1344

  • Installed Visual Studio 2017, with latest updates.

    • Selected .NET desktop development for installation:
      vmware_1346
    • Selected .NET Core cross-platform development for installation:
      vmware_1347
    • Manually selected GitV2 and GitHub Extension for Visual Studio via Individual Components*:
      vmware_1349
    • Installation Summary should read:
      vmware_1350
    • After VS installation is done, IMPORTANT STEP, go to Visual Studio > Tools > Extensions and Updates... Go to the Updates section. and Update GitHub Extension for Visual Studio from v2.2.0.10 to v2.4.3.1737:
      37543821-17ae0ba6-2920-11e8-81de-2868f8e7b479
  • After updating GitHub Extension for Visual Studio to v2.4.3.1737, try cloning a repository with "Open in Visual Studio". You should get this pop up in Chrome:
    chrome_1351
    and it should fail.

PS. Also, keep a close eye out on the very first-try clone of a Git repository. If you clone a repo inside Visual Studio via Team Explorer, IIRC, there's a whole bunch of "Command Prompt" windows that pop up making for an awkward user experience. I couldn't reproduce the "cascade of command prompt" windows because it only happened once. I don't know if this is due to the GitHub extension or just Git + VS.

jpegview_1352

Also, I can't remember which Clone button I used. I vaguely remember it was Number 2 as shown above since Bogus was my first clone.


🎸 💃 "Para bailar La Bamba, para bailar La Bamba..."

@jcansdale
Copy link
Collaborator

@bchavez even though the following implies otherwise, Open in Visual Studio is actually a protocol handler that is installed and used by Microsoft's Team Explorer window.

image

For example if you open the following in your browser:
git-client://clone?repo=https%3A%2F%2Fgit.luolix.top%2Fgithub%2FVisualStudio

Visual Studio should open and show the following in Team Explorer (you may need to scroll down):
image

What you said, "and it should fail", what happens exactly? I'm interested to know what happens if you try to open the git-client URL above in Chrome and/or IE.

@bchavez
Copy link
Author

bchavez commented Mar 19, 2018

Hi @jcansdale , sorry, I should have been more clear about what "fail" means.

  1. On Windows 7 with Chrome and with Visual Studio closed, clicking "Open in Visual Studio" should open Visual Studio. The protocol handler does not open Visual Studio.

  2. On Windows 7 with Chrome and with Visual Studio open, clicking on "Open in Visual Studio" should focus and present dialog UI similar to the one you posted:
    fff

    • In this case, the protocol handler does not bring to focus Visual Studio
    • In this case, the protocol handler does not bing up dialog UI with the clone information.
  3. On Windows 7 with IE11 and with Visual Studio open, clicking "Open in Visual Studio" the following error is displayed:

vmware_1365

👨 🏁 "Louie Louie, oh no... Me gotta go... Aye-yi-yi-yi, I said"

@bchavez
Copy link
Author

bchavez commented Mar 19, 2018

Don't know how helpful this might be, but here is a recording of the protocol handler doing nothing. Here I'm manually clicking to activate between Visual Studio and Chrome:

screen_1362

🔮 🎎 "Magic and technology. Voodoo dolls and chants. Electricity. Were makin weird science..."

@jcansdale
Copy link
Collaborator

@bchavez,

Do you have any registry entries similar to this:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\VisualStudio.git-client.2136940e]
@="Git Protocol Handler"
"AlwaysShowExt"="1"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\VisualStudio.git-client.2136940e\CLSID]
@="{DDD49901-1DD4-4288-A835-F9C413C4EF1F}"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\VisualStudio.git-client.2136940e\DefaultIcon]
@="\"C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\Enterprise\\Common7\\IDE\\VSWebLauncher.exe\",-100"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\VisualStudio.git-client.2136940e\shell]

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\VisualStudio.git-client.2136940e\shell\Open]

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\VisualStudio.git-client.2136940e\shell\Open\Command]
@="\"C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\Enterprise\\Common7\\IDE\\VSWebLauncher.exe\" /openuri \"%1\""

I have a number like VisualStudio.git-client.xxxxxxxxxxx because I have multiple versions of VS installed. You can see it's supposed to open a standard VS component (VSWebLauncher.exe). I wonder why it isn't working? 😕

@bchavez
Copy link
Author

bchavez commented Mar 19, 2018

@jcansdale , I have very similar registry entries on the Windows 7 VM. Here's a DIFF between our registry entries:

  • Yellow yours, Orange mine:

tortoisegitmerge_1371

Basically, version number differences and the path to Community vs Enterprise VS.

My exported registry file: WIN7_GITCLINET_OPEN.zip

🍂 🍃 Distance - Falling (ft Alys Be)

@jcansdale
Copy link
Collaborator

@bchavez that is strange. A security setting maybe? I wonder if any other custom URL handlers work? 😕

To be honest, even when it works, I don't think this feature works very well. There are a few issues that pretty much stop be from using it.

  1. It doesn't let you choose which version of VS to open (which is important for a lot of projects).
  2. If VS is already open, it will open a new instance rather than reuse the already open one.
  3. It doesn't scroll down to the Local Git Repositories section (leaving the user to hunt for it).

I'd prefer to point the user to clear instructions on how to clone from an already open instance of VS.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

2 participants