Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » VMware ThinApp (formerly Thinstall) 3

Модерирует : gyra, Maz

articlebot (28-02-2016 18:11): VMware ThinApp (formerly Thinstall) часть 4  Версия для печати • ПодписатьсяДобавить в закладки
На первую страницук этому сообщениюк последнему сообщению

   

coherent

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Option Explicit
 
Dim fso, Origin, SourcePath, MyProgSourceExe, MyProgSourceIni, hstart, hstartDest, cmd32, SandboxParent, SandboxName, SandboxPath, MyProgDestExe, MyProgDestIni, cmd, id, ProcessName, ProcessNameFriend
 
Function OnLastProcessExit
 
  Set fso = CreateObject("Scripting.FileSystemObject")
 
  Origin = GetEnvironmentVariable("TS_ORIGIN")
  SourcePath = Left(Origin, InStrRev(Origin, "\") - 1)
  MyProgSourceExe = ExpandPath("%ProgramFilesDir%\Data\MyProgram.exe")
  MyProgSourceIni = ExpandPath("%ProgramFilesDir%\Data\MyProgram.ini")
  hstart = ExpandPath("%ProgramFilesDir%\Data\hstart.exe")
  hstartDest = SourcePath & "\hstart.exe"
  cmd32 = ExpandPath("%SystemSystem%\cmd.exe")
   
  SandboxParent = GetBuildOption("SandboxPath")  
  SandboxName = GetBuildOption("SandboxName")  
  If SandboxParent = "." Then  
    SandboxPath = SourcePath & Chr(92) & SandboxName
  Else  
    SandboxPath = SandboxParent & Chr(92) & SandboxName
  End If
   
  MyProgDestExe = SandboxPath & "\MyProgram.exe"
  MyProgDestIni = SandboxPath & "\MyProgram.ini"
  cmd = cmd32 & " /C " & chr(34) & MyProgDestExe & chr(34)
 
  If not fso.FileExists(MyProgDestIni) then
    fso.CopyFile MyProgSourceIni, MyProgDestIni
  End If
 
  If not fso.FileExists(MyProgDestExe) then
    fso.CopyFile MyProgSourceExe, MyProgDestExe
  End If
     
  If not fso.FileExists(hstartDest) then
    fso.CopyFile hstart, hstartDest
  End If
 
  id = ExecuteExternalProcess(hstartDest & " /NOCONSOLE " & chr(34) & cmd & chr(34))
 
  ProcessName = "MyProgram.exe"
  ProcessNameFriend = "MyProgram"
 
  Do while isProcessRunning(ProcessName, ProcessNameFriend)
  Loop
 
  id = ExecuteExternalProcess(hstartDest & " /NOCONSOLE " & chr(34) & "taskkill /F /IM " & "Wmiprvse.exe" & chr(34))
  WaitForProcess id, 0
 
  If fso.FileExists(MyProgDestExe) Then  
    fso.DeleteFile(MyProgDestExe)
  End if
   
  If fso.FileExists(hstartDest) Then  
    fso.DeleteFile(hstartDest)
  End if
 
End Function
 
Function isProcessRunning(ProcessName, ProcessNameFriend)
 
  Dim objWMIService, Process
  set objWMIService = GetObject ("winmgmts:")
  isProcessRunning = False
 
  For each Process in objWMIService.InstancesOf ("Win32_Process")
    If StrComp(Process.Name,ProcessName,vbTextCompare) = 0 then
      isProcessRunning = true
    End If
  Next
 
End Function

Всего записей: 3881 | Зарегистр. 20-02-2007 | Отправлено: 18:16 09-06-2014
   

На первую страницук этому сообщениюк последнему сообщению

Компьютерный форум Ru.Board » Компьютеры » Программы » VMware ThinApp (formerly Thinstall) 3
articlebot (28-02-2016 18:11): VMware ThinApp (formerly Thinstall) часть 4


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru