• Recent
    • Unsolved
    • Tags
    • Popular
    • Users
    • Groups
    • Search
    • Register
    • Login

    FOG Snapin Client download error

    Scheduled Pinned Locked Moved
    FOG Problems
    5
    36
    8.6k
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • S
      Sebastian Roth Moderator
      last edited by

      @Timo This seems to be a restriction in C# following the discussion here: http://www.codeproject.com/Questions/142532/appending-and-splitting-files-larger-than-gb

      Possibly this is only happening because you have 32 bit Windows installed?? Please check! Or this might be a general restriction and we need to read large snapin files as chunks, @Jbob?

      Web GUI issue? Please check apache error (debian/ubuntu: /var/log/apache2/error.log, centos/fedora/rhel: /var/log/httpd/error_log) and php-fpm log (/var/log/php*-fpm.log)

      Please support FOG if you like it: https://wiki.fogproject.org/wiki/index.php/Support_FOG

      T 1 Reply Last reply Reply Quote 0
      • T
        Timo @Sebastian Roth
        last edited by Timo

        @Sebastian-Roth said in FOG Snapin Client download error:

        @Timo This seems to be a restriction in C# following the discussion here: http://www.codeproject.com/Questions/142532/appending-and-splitting-files-larger-than-gb

        Possibly this is only happening because you have 32 bit Windows installed?? Please check! Or this might be a general restriction and we need to read large snapin files as chunks, @Jbob?

        Hi Sebastian, no the Client runs an Windows 7 x64 Installation

        1 Reply Last reply Reply Quote 0
        • J
          Joe Schmitt Senior Developer
          last edited by

          @Timo the original header problem is fixed. @Sebastian-Roth is correct in that the hashing error is a limitation of c#. I’ll see what I can do.

          Please help us build the FOG community with everyone involved. It's not just about coding - way more we need people to test things, update documentation and most importantly work on uniting the community of people enjoying and working on FOG! Get in contact with me (chat bubble in the top right corner) if you want to join in.

          1 Reply Last reply Reply Quote 0
          • J
            Joe Schmitt Senior Developer
            last edited by

            @Timo for now you could set the snapin file to a batch script which downloads the exe from a samaba share or something and runs it.

            Please help us build the FOG community with everyone involved. It's not just about coding - way more we need people to test things, update documentation and most importantly work on uniting the community of people enjoying and working on FOG! Get in contact with me (chat bubble in the top right corner) if you want to join in.

            T 1 Reply Last reply Reply Quote 0
            • T
              Timo @Joe Schmitt
              last edited by

              @Jbob said in FOG Snapin Client download error:

              @Timo for now you could set the snapin file to a batch script which downloads the exe from a samaba share or something and runs it.

              Hi Jbob thx for your help. How can i realize that? I’ve an Synology NAS where i can store that, do you have an example script, maybe?

              1 Reply Last reply Reply Quote 0
              • J
                Joe Schmitt Senior Developer
                last edited by Joe Schmitt

                @Timo Batch lacks the ability to download a file natively. Here is a vbs script which should do what you are looking for.

                Save the code as “Bootstrap.vbs”, and update the http://fog-server/MyProgram.exe line to reflect a real URL where your snapin can be downloaded, the easiest way may be to just copy your snapin file to /var/www/html/, and then it is accessible via http://{fog-server}/MyProgram.exe, where Myprogram.exe is the file name. Also update references to MyProgram.exe to your program’s file name.

                Note that this code is untested.

                Use the following snapin settings:
                Snapin Run With: cscript
                Snapin Run With Args: //B //Nologo
                Snapin File: Bootstrap.vbs

                Bootstrap.vbs code:

                'http://www.robvanderwoude.com/vbstech_internet_download.php
                
                HTTPDownload "http://fog-server/MyProgram.exe", "C:\"
                
                Dim objShell
                Set objShell = WScript.CreateObject( "WScript.Shell" )
                objShell.Run("C:\MyProgram.exe")
                Set objShell = Nothing
                
                
                Dim fso
                Set fso = CreateObject("Scripting.FileSystemObject")
                fso.DeleteFile("C:\MyProgram.exe")
                Set fso = Nothing
                
                
                Sub HTTPDownload( myURL, myPath )
                ' This Sub downloads the FILE specified in myURL to the path specified in myPath.
                '
                ' myURL must always end with a file name
                ' myPath may be a directory or a file name; in either case the directory must exist
                '
                ' Written by Rob van der Woude
                ' http://www.robvanderwoude.com
                '
                ' Based on a script found on the Thai Visa forum
                ' http://www.thaivisa.com/forum/index.php?showtopic=21832
                
                    ' Standard housekeeping
                    Dim i, objFile, objFSO, objHTTP, strFile, strMsg
                    Const ForReading = 1, ForWriting = 2, ForAppending = 8
                
                    ' Create a File System Object
                    Set objFSO = CreateObject( "Scripting.FileSystemObject" )
                
                    ' Check if the specified target file or folder exists,
                    ' and build the fully qualified path of the target file
                    If objFSO.FolderExists( myPath ) Then
                        strFile = objFSO.BuildPath( myPath, Mid( myURL, InStrRev( myURL, "/" ) + 1 ) )
                    ElseIf objFSO.FolderExists( Left( myPath, InStrRev( myPath, "\" ) - 1 ) ) Then
                        strFile = myPath
                    Else
                        WScript.Echo "ERROR: Target folder not found."
                        Exit Sub
                    End If
                
                    ' Create or open the target file
                    Set objFile = objFSO.OpenTextFile( strFile, ForWriting, True )
                
                    ' Create an HTTP object
                    Set objHTTP = CreateObject( "WinHttp.WinHttpRequest.5.1" )
                
                    ' Download the specified URL
                    objHTTP.Open "GET", myURL, False
                    objHTTP.Send
                
                    ' Write the downloaded byte stream to the target file
                    For i = 1 To LenB( objHTTP.ResponseBody )
                        objFile.Write Chr( AscB( MidB( objHTTP.ResponseBody, i, 1 ) ) )
                    Next
                
                    ' Close the target file
                    objFile.Close( )
                End Sub
                

                Please help us build the FOG community with everyone involved. It's not just about coding - way more we need people to test things, update documentation and most importantly work on uniting the community of people enjoying and working on FOG! Get in contact with me (chat bubble in the top right corner) if you want to join in.

                T 1 Reply Last reply Reply Quote 1
                • Wayne WorkmanW
                  Wayne Workman
                  last edited by

                  I’d opt for a batch file still as a stop-gap.

                  use xcopy to get the file. it supports UNC paths.

                  Please help us build the FOG community with everyone involved. It's not just about coding - way more we need people to test things, update documentation and most importantly work on uniting the community of people enjoying and working on FOG!
                  Daily Clean Installation Results:
                  https://fogtesting.fogproject.us/
                  FOG Reporting:
                  https://fog-external-reporting-results.fogproject.us/

                  1 Reply Last reply Reply Quote 0
                  • T
                    Timo @Joe Schmitt
                    last edited by

                    @Jbob said in FOG Snapin Client download error:

                    @Timo Batch lacks the ability to download a file natively. Here is a vbs script which should do what you are looking for.

                    Save the code as “Bootstrap.vbs”, and update the http://fog-server/MyProgram.exe line to reflect a real URL where your snapin can be downloaded, the easiest way may be to just copy your snapin file to /var/www/html/, and then it is accessible via http://{fog-server}/MyProgram.exe, where Myprogram.exe is the file name. Also update references to MyProgram.exe to your program’s file name.

                    Note that this code is untested.

                    Use the following snapin settings:
                    Snapin Run With: cscript
                    Snapin Run With Args: //B //Nologo
                    Snapin File: Bootstrap.vbs

                    Bootstrap.vbs code:

                    'http://www.robvanderwoude.com/vbstech_internet_download.php
                    
                    HTTPDownload "http://fog-server/MyProgram.exe", "C:\"
                    
                    Dim objShell
                    Set objShell = WScript.CreateObject( "WScript.Shell" )
                    objShell.Run("C:\MyProgram.exe")
                    Set objShell = Nothing
                    
                    
                    Dim fso
                    Set fso = CreateObject("Scripting.FileSystemObject")
                    fso.DeleteFile("C:\MyProgram.exe")
                    Set fso = Nothing
                    
                    
                    Sub HTTPDownload( myURL, myPath )
                    ' This Sub downloads the FILE specified in myURL to the path specified in myPath.
                    '
                    ' myURL must always end with a file name
                    ' myPath may be a directory or a file name; in either case the directory must exist
                    '
                    ' Written by Rob van der Woude
                    ' http://www.robvanderwoude.com
                    '
                    ' Based on a script found on the Thai Visa forum
                    ' http://www.thaivisa.com/forum/index.php?showtopic=21832
                    
                        ' Standard housekeeping
                        Dim i, objFile, objFSO, objHTTP, strFile, strMsg
                        Const ForReading = 1, ForWriting = 2, ForAppending = 8
                    
                        ' Create a File System Object
                        Set objFSO = CreateObject( "Scripting.FileSystemObject" )
                    
                        ' Check if the specified target file or folder exists,
                        ' and build the fully qualified path of the target file
                        If objFSO.FolderExists( myPath ) Then
                            strFile = objFSO.BuildPath( myPath, Mid( myURL, InStrRev( myURL, "/" ) + 1 ) )
                        ElseIf objFSO.FolderExists( Left( myPath, InStrRev( myPath, "\" ) - 1 ) ) Then
                            strFile = myPath
                        Else
                            WScript.Echo "ERROR: Target folder not found."
                            Exit Sub
                        End If
                    
                        ' Create or open the target file
                        Set objFile = objFSO.OpenTextFile( strFile, ForWriting, True )
                    
                        ' Create an HTTP object
                        Set objHTTP = CreateObject( "WinHttp.WinHttpRequest.5.1" )
                    
                        ' Download the specified URL
                        objHTTP.Open "GET", myURL, False
                        objHTTP.Send
                    
                        ' Write the downloaded byte stream to the target file
                        For i = 1 To LenB( objHTTP.ResponseBody )
                            objFile.Write Chr( AscB( MidB( objHTTP.ResponseBody, i, 1 ) ) )
                        Next
                    
                        ' Close the target file
                        objFile.Close( )
                    End Sub
                    

                    Hi there, at this moment i’m trying your script but i think it hangs in the download it now takes over 10 minutes, but i have no status window what is happening. The download from my fogserver manually tested runs fine

                    1 Reply Last reply Reply Quote 0
                    • T
                      Timo
                      last edited by Timo

                      If i run it on the Client in an Dos box , with cscript bootstrap.vbs it comes up with an error after a few seconds "WinHttp.WinHttpRequest: For this operation is not enough memory available But 😄 has enough free Memory (60GB)

                      Tom ElliottT 1 Reply Last reply Reply Quote 0
                      • Tom ElliottT
                        Tom Elliott @Timo
                        last edited by

                        @Timo memory is not disk space. It sounds, to me, like it’s trying to put the whole file in ram. You may need to have the script copy the file locally then run it from the local machine.

                        Please help us build the FOG community with everyone involved. It's not just about coding - way more we need people to test things, update documentation and most importantly work on uniting the community of people enjoying and working on FOG! Get in contact with me (chat bubble in the top right corner) if you want to join in.

                        Web GUI issue? Please check apache error (debian/ubuntu: /var/log/apache2/error.log, centos/fedora/rhel: /var/log/httpd/error_log) and php-fpm log (/var/log/php*-fpm.log)

                        Please support FOG if you like it: https://wiki.fogproject.org/wiki/index.php/Support_FOG

                        1 Reply Last reply Reply Quote 0
                        • J
                          Joe Schmitt Senior Developer
                          last edited by

                          @Timo v0.10 allows for hashing large files. When it is released, can you confirm that the issue is fixed?

                          Please help us build the FOG community with everyone involved. It's not just about coding - way more we need people to test things, update documentation and most importantly work on uniting the community of people enjoying and working on FOG! Get in contact with me (chat bubble in the top right corner) if you want to join in.

                          1 Reply Last reply Reply Quote 0
                          • 1
                          • 2
                          • 2 / 2
                          • First post
                            Last post

                          318

                          Online

                          12.0k

                          Users

                          17.3k

                          Topics

                          155.2k

                          Posts
                          Copyright © 2012-2024 FOG Project