Improve company productivity with a Business Account.Sign Up

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 1047
  • Last Modified:

Group Policy Software Installation - Unable to read MSI file

This question is related to the one at this link: http://www.experts-exchange.com/OS/Microsoft_Operating_Systems/Server/2003_Server/Q_26554295.html

I never did get a solution. After adding the MSI to the group policy, the event viewer comes up with the error "Unable to read MS file... SQL query syntax invalid or unsupported". Screenshot attached. What is the problem? Event Viewer message
0
cpeele
Asked:
cpeele
  • 8
  • 7
1 Solution
 
cpeeleAuthor Commented:
Additional Notes: The MSI is a package build with the IEAK. It works fine when run manually.
0
 
Joseph MoodyBlogger and wearer of all hats.Commented:
Will it work fine if you run msiexec /i "PATH TO MSI" /quiet?
0
 
cpeeleAuthor Commented:
Yes it runs with that command.
0
Problems using Powershell and Active Directory?

Managing Active Directory does not always have to be complicated.  If you are spending more time trying instead of doing, then it's time to look at something else. For nearly 20 years, AD admins around the world have used one tool for day-to-day AD management: Hyena. Discover why

 
Joseph MoodyBlogger and wearer of all hats.Commented:
And you are repackaging IE8 to distribute?
0
 
cpeeleAuthor Commented:
What I did was create an MSI that has custom settings for IE and is a silent install. The latter being the main reason for creating the MSI. We have a lot of systems with IE6 and want to upgrade them easily.
0
 
Joseph MoodyBlogger and wearer of all hats.Commented:
Can you not deploy it through WSUS?
0
 
cpeeleAuthor Commented:
I don't have WSUS. I plan on installing it at some point. But I have to get a server set up first. Also, as far as I understand it, and correct me if I'm wrong, I would just be able to approve it for install, and not actually control the install. i.e. force it to be installed, and make it silent.
0
 
cpeeleAuthor Commented:
I would still like to know what this SQL error is about either way...
0
 
Joseph MoodyBlogger and wearer of all hats.Commented:
It would install silently and you can configure everything in group policy. My guess (and only a guess) is that like a lot of new Microsoft releases, they aren't supported through normal GP MSI deployment.

Instead, it seems that they want them to be installed through WSUS or through SMS (or whatever they call it these days).

If you would like, I can give you a startup script that will allow you to run the msiexec command one time per computer. If msiexec worked manually, this script should work.
0
 
cpeeleAuthor Commented:
OK. Yeah if you don't mind I'd like to see the script. Not sure when I will get WSUS up and the old IE is causing users a lot of issues when viewing needed websites so it's kind of pressing right now. Thanks for your help.
0
 
Joseph MoodyBlogger and wearer of all hats.Commented:
I attached the vbs script.

At the top, you will need to edit the asoftware (0,0) through aSoftware (0,2)

(0,0): Name of Software
(0,1): Path to batch fil that runs MSIEXEC. You have to do that so that it will stay silent
(0,2): Fake file. I occassionally use this line to run NTFS security scripts.

At startup, this script will run. It will call 0,1 and install IE8. Upon finishing, it will write IE8 (or whatever value you have in 0,0 to a hidden file at C:\. At the next startup, it will check to see if IE8 is written to that file. If it is, the script terminiates.

Const ForReading = 1, ForWriting = 2
   newFile = 0
   Dim aSoftware(0, 2)
   aSoftware(0,0) = "IE8"
   aSoftware(0,1) = "UNC to batch file that runs MSIEXEC command"
   aSoftware(0,2) = "Fake File somewhere"

      
   On Error Resume Next
   Set WshShell = CreateObject("WScript.Shell")
   Set fso = CreateObject("Scripting.FileSystemObject")

   If fso.FileExists("C:\IS.dat") = 0 Then    'If file is present, read contents to determine installed software
     Set fDataFile = fso.CreateTextFile("C:\IS.dat", True)
     fDataFile.close
     set f = fso.GetFile("C:\IS.dat")
     f.attributes = 6
     newFile = 1
   End If

   Set fDataFile = fso.OpenTextFile("C:\IS.dat", ForReading)
   Do While Not fDataFile.AtEndOfStream
     strSoftware = fDataFile.ReadLine
   Loop
   fDataFile.close
   aLoadedSoftware = Split(strSoftware, ",", -1, 1)

   For o = 0 To UBound(aSoftware)
     found = 0
     For i = 0 to UBound(aLoadedSoftware)
       If aSoftware(o, 0) = aLoadedSoftware(i) Then
         found = 1
         i = UBound(aLoadedSoftware)
       End If
     Next
     If found = 0 Then
       If newFile = 1 Then
         strSoftware = aSoftware(o, 0)
         newFile = 0
       Else
         strSoftware = strSoftware & "," & aSoftware(o, 0)
       End If
       set f = fso.GetFile("C:\IS.dat")
       f.attributes = 0
       Set fDataFile = fso.OpenTextFile("C:\IS.dat", ForWriting, True)
       fDataFile.writeLine strSoftware
       fDataFile.close
       f.attributes = 6

       If Not IsEmpty(aSoftware(o, 1)) And aSoftware(o, 1) <> "" Then
         Set oExec = WshShell.Exec(aSoftware(o, 1))
         Do While oExec.Status = 0
           WScript.Sleep 100
         Loop
       End If
       If Not IsEmpty(aSoftware(o, 2)) And aSoftware(o, 2) <> "" Then
         Set oShell = WScript.CreateObject ("WSCript.shell")
         oShell.run aSoftware(o, 2), 0, true
         Set oShell = Nothing
       End If
     End If
   Next

Open in new window

0
 
cpeeleAuthor Commented:
Thanks I will give it a shot!
0
 
Joseph MoodyBlogger and wearer of all hats.Commented:
Ok. Let me know if you have any issues.
0
 
cpeeleAuthor Commented:
I couldn't get the script to work, it ran on startup but did not install IE8. However, I think I will just go ahead and get WSUS set up as it seems like the best route. Thank you.
0
 
Joseph MoodyBlogger and wearer of all hats.Commented:
No problem.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Free Tool: Path Explorer

An intuitive utility to help find the CSS path to UI elements on a webpage. These paths are used frequently in a variety of front-end development and QA automation tasks.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

  • 8
  • 7
Tackle projects and never again get stuck behind a technical roadblock.
Join Now