| 
				
			 | 
			
			 | 
			@@ -0,0 +1,34 @@ | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			module.exports = { | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        verifyAndInstall(){ | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			            return getTaskCheckExists(this.shellcmd, { ignorefailures: true })().then((exists) => { | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			            if(exists) { | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			              // return any(['git', ['config', '--global', '-l']].map(getshelltask)) | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			              return this.postinstallsteps.bind(this)() | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			            } | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			              return this.install(); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			          }); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			          }, | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
  | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        acquireElevationState(__isElevated) { | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			          if (__isElevated === null) { | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			            return nodeShellExec("fsutil", ["dirty", "query", "C:"], { | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			              inherit: true | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			              // , shell: true | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			              , stdio: 'ignore' | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			              , env: process.env | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			              , title: `check privileged execution mode using "fsutil dirty query C:"` | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			            }).then((exitcode) => { | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			              console.log('Elevated') | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			              __isElevated = true; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			              return true; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			            }).catch(() => { | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			              __isElevated = false; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			              console.log('Not Elevated'); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			              return false; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			            }); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			          } | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			          else return Promise.resolve(__isElevated); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        }, | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
  | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			} | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
  |