44 *--------------------------------------------------------------------------------------------*/
55
66import { Event } from 'vs/base/common/event' ;
7+ import { IEnvironmentService } from 'vs/platform/environment/common/environment' ;
78import { IURLService } from 'vs/platform/url/common/url' ;
89import product from 'vs/platform/product/common/product' ;
910import { app , Event as ElectronEvent } from 'electron' ;
@@ -32,7 +33,8 @@ export class ElectronURLListener {
3233 constructor (
3334 initial : string | string [ ] ,
3435 @IURLService private readonly urlService : IURLService ,
35- @IWindowsMainService windowsMainService : IWindowsMainService
36+ @IWindowsMainService windowsMainService : IWindowsMainService ,
37+ @IEnvironmentService environmentService : IEnvironmentService
3638 ) {
3739 const globalBuffer = ( ( < any > global ) . getOpenUrls ( ) || [ ] ) as string [ ] ;
3840 const rawBuffer = [
@@ -43,7 +45,9 @@ export class ElectronURLListener {
4345 this . uris = coalesce ( rawBuffer . map ( uriFromRawUrl ) ) ;
4446
4547 if ( isWindows ) {
46- app . setAsDefaultProtocolClient ( product . urlProtocol , process . execPath , [ '--open-url' , '--' ] ) ;
48+ const windowsParameters = environmentService . isBuilt ? [ ] : [ `"${ environmentService . appRoot } "` ] ;
49+ windowsParameters . push ( '--open-url' , '--' ) ;
50+ app . setAsDefaultProtocolClient ( product . urlProtocol , process . execPath , windowsParameters ) ;
4751 }
4852
4953 const onOpenElectronUrl = Event . map (
0 commit comments