#To define a particular parameter, replace the 'parameterName' inside itsm.getParameter('parameterName') with that parameter's name
#The network share file path
Folderpath=itsm.getParameter('Folderpath')
#provide filename with extension
filename=itsm.getParameter('filename')
# Provide the user name for the shared system
share_user=itsm.getParameter('share_user')
# Provide the password for the shared system
share_pass=itsm.getParameter('share_pass')

Filepath=r""+Folderpath+'\\'+filename
print Filepath
import os
import shutil
import ctypes
import subprocess

class disable_file_system_redirection:
    _disable = ctypes.windll.kernel32.Wow64DisableWow64FsRedirection
    _revert = ctypes.windll.kernel32.Wow64RevertWow64FsRedirection
    def __enter__(self):
        self.old_value = ctypes.c_long()
        self.success = self._disable(ctypes.byref(self.old_value))
    def __exit__(self, type, value, traceback):
        if self.success:
            self._revert(self.old_value)

with disable_file_system_redirection():		
    workdir=os.environ['PROGRAMDATA']+r'\temp'
    if not os.path.exists(workdir):
        os.mkdir(workdir)
    print 'Copying files to local machine....'
	cmd= 'NET USE "'+Filepath+'" /USER:'+share_user+'  "'+share_pass+'"'
    print 'Login to network share'
    p= os.popen(cmd).read()
    if p=='':
        print 'Login to network share failed. Provide the accurate credentials'
    else:
        print workdir
        print Filepath
        shutil.copy(Filepath,workdir)
        print "copied successfully"
        path=workdir+"\\"+filename
        print path
if os.path.isfile(path):
    try:
        with disable_file_system_redirection():
            print "Excuting Bat File"
            process = subprocess.Popen([path],stdout=subprocess.PIPE)
            stdout = process.communicate()[0]
            print "---------------------------"
            print stdout
    except:
        print "Excuting Bat File"
        process = subprocess.Popen([path],stdout=subprocess.PIPE)
        stdout = process.communicate()[0]
        print "---------------------------"
        print stdout
    
if os.path.exists(path):
	try:
		os.remove(path)
	except:
		pass