2 small utilities for Spoon Studio

Discussion in 'Virtualization' started by a_catalin, May 20, 2011.

  1. johnmcloud

    johnmcloud MDL Junior Member

    Jul 10, 2011
    97
    6
    0
    #161 johnmcloud, Nov 18, 2011
    Last edited: Nov 18, 2011
    The spoon support is fast.
    If you can, make a black .exe without flashing for events like this, until they fix the bug.
    Thanks

    Edit. This is my answer about "Out-of-The-Box"

    What do you think catalin? It's always a single file with some compression on it, i think a folder with 200 files is more fast then a "single svm with 200 files inside".

    Also, we can do the same thing with ExeBuilder without make two build.
     
  2. johnmcloud

    johnmcloud MDL Junior Member

    Jul 10, 2011
    97
    6
    0
    Thanks, will be useful.
    My answer to Spoon Support about the "Out-of-the-Box" feature:

     
  3. a_catalin

    a_catalin MDL Member

    Mar 4, 2011
    166
    66
    10
    Yes, I agree.
     
  4. flatwax

    flatwax MDL Novice

    Jul 3, 2011
    16
    0
    0
    did you choose @APPDIR@? did you capture it from vmware (windows 7 32bit)?
     
  5. a_catalin

    a_catalin MDL Member

    Mar 4, 2011
    166
    66
    10
    For "Application sandbox location" you can choose something like "@APPDIR@\DriverMaxFiles" if you want but it's not absolutely necessary for this program.
    I made the capture in XP SP3 in VirtualBox.
     
  6. johnmcloud

    johnmcloud MDL Junior Member

    Jul 10, 2011
    97
    6
    0
    #168 johnmcloud, Nov 19, 2011
    Last edited: Nov 19, 2011
    I've also noticed the heaviness of the spoon than ThinApp, and surely one of the problems is the single file that contains many instructions, If the file was extracted would be definitely faster.
    Maybe they do this for a security problem?

    However approve your request, in the hope that the support accept the feature. If they don't accept, we always have the ability to create this feature by yourself

    Spoon Studio has the ability to become better ThinApp, if they add additional features and more compatibility with all applications
     
  7. johnmcloud

    johnmcloud MDL Junior Member

    Jul 10, 2011
    97
    6
    0
    catalin, i do not know how to explain more clearly the out-of-the-box feature. The "Merge" need the folder in the same directory of the installation software, ex. C:\Programs Files\Office\ecc...
    I would a redirect to that folder on the same direcory to the main .exe, or maybe using the same command of the sandbox ( the macros like @APPDIR@ )
    Give me a hand to explain the function in the best way
     
  8. a_catalin

    a_catalin MDL Member

    Mar 4, 2011
    166
    66
    10
    I'll try with my "english" :D:

    What I want is a bit similar with "Merge" but with some differences:
    1. "Merge" is not working for all programs; for example if you open some files of the virtualized application from a Merged folder (inside the virtual environment) sometimes it will say that is not founding something in the other folders of the program.
    I hope that this will solve also the problem.
    2. I think that with Merge the virtual environment is wasting more resources than with this feature. If the virtual environment will "supervise" less the files/folders access then the program will access its files/folders faster. With Merge it has to "supervise" the virtual HDD and the sandbox (not much as for WriteCopy and Full but it counts) + the real folder. With this feature will "supervise" only the folder.
    3. If I use "Merge" on "C:\Program Files\Application" I will have to create "C:\Program Files\Application" folder and copy the files inside. But, with this feature, it will "see" as "C:\Program Files\Application" a folder near the output exe file. For example, if the exe is in "D:\Folder1" and it uses Folder2 near the exe for this feature, when the application it's trying to access "C:\Program Files\Application\file" it will actually access "D:\Folder1\Folder2\file".

    I hope that helps.
    Try to say these to him with your own words.
     
  9. johnmcloud

    johnmcloud MDL Junior Member

    Jul 10, 2011
    97
    6
    0
    Hope your english is better then mine :D
    I have virtually everything you've written, with minor changes

    Thanks, I'll keep you updated on any developments.
     
  10. a_catalin

    a_catalin MDL Member

    Mar 4, 2011
    166
    66
    10
    I tested normal capture of Office 2010, still doesn't work.
    I will test with that method also...
     
  11. a_catalin

    a_catalin MDL Member

    Mar 4, 2011
    166
    66
    10
    I tested with the guide too, doesn't seem to be anything important fixed.
     
  12. a_catalin

    a_catalin MDL Member

    Mar 4, 2011
    166
    66
    10
    #176 a_catalin, Dec 27, 2011
    Last edited: Dec 27, 2011
    (OP)
    Merry Christmas to everyone!

    Seems like ExeBuilder is more and more used :). It's a good thing but unfortunately there is a price: some antiviruses don't like the way in which the generated exe files loads the exe from the virtualized application. Especially because these exe files have the same name and internal informations as the originals. By the way, this is the reason why I did not implemented the internal informations "transfer" from the beginning :D...
    As a result, at VirusTotal there are some antiviruses who says "Trojan/Generic/Heuristic..." meaning that they think it's maybe infected but they are not sure. This is for Microsoft Office's exe files, for other applications less used the number is smaller.
    I tried to report the problem to every antivirus support/manufacturer.
    But it's working slow, some are not doing anything, some are not replying at all...

    If you want you can help by submitting the exe files as false positives (mentioning also how they were created), you can participate on their forums to the topics created for this etc.
    Thank you.
     
  13. robbforce

    robbforce MDL Novice

    Dec 28, 2011
    1
    2
    0
    #177 robbforce, Dec 28, 2011
    Last edited by a moderator: Apr 20, 2017
    I found this thread because I've been interested in creating virtual apps with spoon studio. I have been doing so with ThinApp for a few years now, but some applications are stubborn, so occasionally I've looked for alternatives like Spoon, Evalaze, Installfree, Cameyo. However, I have never been successful with anything other than ThinApp for some reason. :confused:

    Anyway, I saw your request for external folder access in Spoon and thought I would comment. If I understand it correctly, I've been doing this for a couple years with ThinApp, by creating a vbscript file that runs when an executable first starts. I saw the idea from an old thread on the vmware forums. One of my scripts looks like this:

    Code:
    ' DECLARE VARIABLESDim WSHNetwork, WSHShell, objFSO
    
    
    ' SET GLOBAL VARIABLES
    'Set WSHNetwork = CreateObject("WScript.Network")
    Set WSHShell = CreateObject("WScript.Shell")
    Set objFSO = CreateObject("Scripting.FileSystemObject")
    
    
    ' DEFINE SCRIPT ENVIRONMENT VARIABLES
    OsType = WSHShell.RegRead("HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment\PROCESSOR_ARCHITECTURE")
    Origin = GetEnvironmentVariable("TS_ORIGIN")
    LastSlash = InStrRev(Origin, "\") 
    SourcePath = Left(Origin, LastSlash) 
    ExeName = Mid(Origin, LastSlash + 1, Len(Origin))
    
    
    ' TEST MESSAGE BOX
    'MsgBox "Origin = " & Origin & vbCrLf & "Executable = " & ExeName,,"Non-Function Test Box"
    
    
    Function OnFirstSandboxOwner 
      ' This launches ONLY ONCE at the point when the ThinApp sandbox is first locked.
      Dim strSourceFolder, strDestFolder, strSourceFile, strDestFile
    
    
      ' The following will copy new items to the sandbox if they can't be found there already
      strSourceFolder = SourcePath & "external files\scripts\"
      strDestFolder = ExpandPath("%ProgramFilesDir%\some program\scripts\")
      Call CopyToSandbox(strSourceFolder, strDestFolder, "vbs")
    
    
      strSourceFolder = SourcePath & "external files\plug-ins\"
      strDestFolder = ExpandPath("%ProgramFilesDir%\some program\plug-ins\")
      Call CopyToSandbox(strSourceFolder, strDestFolder, "")
    
    
      ' Copy the CPU specific ini file to the sandbox
      If (OsType = "x86") Then
        strSourceFile = SourcePath & "external files\config x86.ini"
      Else
        strSourceFile = SourcePath & "external files\config x64.ini"
      End If
      strDestFile = ExpandPath("%ProgramFilesDir%\some program\config.ini")
    '  MsgBox strSourceFile & vbCrLf & strDestFile
      If Not objFSO.FileExists(strDestFile) Then
        objFSO.CopyFile strSourceFile, strDestFile, TRUE
      End If
    
    
      Set WSHShell = nothing
      Set objFSO=Nothing
    End Function
    
    
    Sub CopyToSandbox(SourceFolder, DestFolder, strExtent)
      Dim objFolder, objFile, strSourceFile, strDestFile
    
    
      If Not objFSO.FolderExists(DestFolder) Then
        objFSO.CreateFolder(DestFolder)
      End If
    
    
      Set objFolder = objFSO.GetFolder(SourceFolder)
    
    
      If strExtent <> "" Then
        For Each objFile in objFolder.Files
          If LCase(Right(objFile.Name, Len(strExtent))) = strExtent Then
            strSourceFile = objFile.Path
            strDestFile = DestFolder & objFSO.GetFileName(strSourceFile)
    '      MsgBox strSourceFile & vbCrLf & strDestFile
            If Not objFSO.FileExists(strDestFile) Then
              objFSO.CopyFile strSourceFile, strDestFile, TRUE
            End If
          End If
        Next
      Else
        For Each objFile in objFolder.SubFolders
          strSourceFile = objFile.Path
          strDestFile = DestFolder & objFile.Name
    '      MsgBox strSourceFile & vbCrLf & strDestFile
          If Not objFSO.FolderExists(strDestFile) Then
            objFSO.CopyFolder strSourceFile, DestFolder, TRUE
          End If
        Next
      End If
    End Sub
    
    
    'Function OnFirstParentStart
      ' This launches ONCE for each entry point within the ThinApp packaged application.
        
    'End Function
    
    
    'Function OnFirstParentExit
      ' This launches ONLY ONCE at the point when the 1st entry point (that locked the sandbox) exits. This does not unlock the sandbox. 
        
    'End Function
    
    
    Function OnLastProcessExit
      ' This launches ONLY ONCE for the very last process (not entry point) that exits from within the ThinApp packaged application, shutting down the virtual OS.
      ' Left here to do nothing, otherwise thinapp runs the OnFirstSandboxOwner event again
    End Function
    All I do is save that code as a .vbs file and place it next to the package.ini. ThinApp automatically picks it up during the build process. With that little bit of code I'm able to copy single files, multiple files or subfolders into the virtual file system (a sandbox in my case). I haven't look very hard, but is there a way to do the same thing with Spoon?
     
  14. a_catalin

    a_catalin MDL Member

    Mar 4, 2011
    166
    66
    10
    #178 a_catalin, Dec 29, 2011
    Last edited by a moderator: Apr 20, 2017
    (OP)
    Thank you, I will test it...
     
  15. johnmcloud

    johnmcloud MDL Junior Member

    Jul 10, 2011
    97
    6
    0
    #179 johnmcloud, Jan 12, 2012
    Last edited: Jan 12, 2012
    New Version Out!

    Happy new year:clap3:

    Guys,
    New version of Spoon Studio:
    10.0.2010

    The name is changed, now is
    Spoon Virtual Application Studio 2012 :)

    P.S The site require an account for download. You can use the JIRA account
     
  16. a_catalin

    a_catalin MDL Member

    Mar 4, 2011
    166
    66
    10
    #180 a_catalin, Jan 12, 2012
    Last edited: Jan 12, 2012
    (OP)