There are some 3rd party group policy tools out there that bork it rather nicely. It only works that way if you have a plain AD.
Printable View
just to add my displeasure to this thread.
We added the AD connector at a clients site yesterday (50+ users)
For most it appears tohave worked fine, however like the rest of the people in this thread, 2 or 3 users are finding that their machine hangs shortly after login and before explorer loads.
Disabling the logon script in the AD solves the issue instantly and the PC's logon with no issues.
I can then check their event viewer and see this
A little help?Quote:
Event Type: Warning
Event Source: Winlogon
Event Category: None
Event ID: 1217
Date: 10/02/2010
Time: 08:22:42
User: N/A
Computer: MACHINENAME
Description:
Execution of GPO scripts has timed out and have been terminated.
For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.
I used to have the exact problem you are describing (but I am talking about UT 6.x). I fixed it changing the behavior of the AD connector script, but I don't know these days how the one distributed by Untangle looks like. Can you share your script here? I'll compare it to ours. Thanks
I am going down to the customer site today to return a printer, so will grab a copy and post it here.
I am not a VB person so any help with it would be appreciated
As promised:
Code:'Handle or Ignore all errors
On Error Resume Next
'Time in milliseconds to sleep between request
SLEEP_PERIOD = 300000
URL_PREFIX = "http"
If WScript.Arguments.Count = 1 Then
ServerName = WScript.Arguments.Item(0)
Else
ServerName = "192.168.0.5"
End If
'WScript.Echo "ServerName is:"
'WScript.Echo ServerName
Do While True
Set AJAX = CreateObject("MSXML2.ServerXMLHTTP")
Set wshShell = CreateObject("WScript.Shell")
strUser = wshShell.ExpandEnvironmentStrings("%USERNAME%")
strDomain = wshShell.ExpandEnvironmentStrings("%USERDOMAIN%")
strHostname = wshShell.ExpandEnvironmentStrings("%COMPUTERNAME%")
command = URL_PREFIX+"://"+ServerName+"/adpb/registration?username="+strUser+"&domain="+strDomain+"&hostname="+strHostname+"&action=login"
'WScript.Echo command
AJAX.Open "GET", command
AJAX.Send ""
WScript.sleep(SLEEP_PERIOD)
AJAX.Abort
Set AJAX = nothing
Loop
Ours is a little bit different, we modified because we had some of our developers changed the default windows file association of .vbs files.
Before the WHILE loop we added this line:
and before the LOOP line:Code:Set Shell = CreateObject( "WScript.Shell" )
If you have the AD connector means you have support, right? I recommend you to call Untangle support or test my modified script in a test environment.Code:' To take care of users changing the default .vbs behavior
Shell.RegDelete "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.vbs\OpenWithList\"
Shell.RegWrite "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.vbs\OpenWithList\a", "NOTEPAD.EXE", "REG_SZ"
Shell.RegWrite "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.vbs\OpenWithList\MRUList", "a", "REG_SZ"
to solve the probelm with CMD console I have used this tool:
http://www.codejacked.com/create-exe...xtra-software/
It works for me ;)
One of our guys took the AD logon script, cleaned it up a bit, and then used Visual Studio to convert it into an EXE that we can run at startup. That should avoid the weird login issues created by the script. We're testing it now and it seems to work great.
Seems Like I need help
I have set
ComputerConf > Admin Templates > System > Scripts
- Run logon scripts synchronously = I have disabled
- Run startup scripts asynchronously = I have enabled
and
UserConf > Admin Templates > System > Scripts
- Run logon scripts synchronously = I have disabled
The script is the standard script:-
Handle or Ignore all errors
On Error Resume Next
'Time in milliseconds to sleep between request
SLEEP_PERIOD = 300000
URL_PREFIX = "http"
If WScript.Arguments.Count = 1 Then
ServerName = WScript.Arguments.Item(0)
Else
ServerName = "172.16.143.254"
End If
'WScript.Echo "ServerName is:"
'WScript.Echo ServerName
Do While True
Set AJAX = CreateObject("MSXML2.ServerXMLHTTP")
Set wshShell = CreateObject("WScript.Shell")
strUser = wshShell.ExpandEnvironmentStrings("%USERNAME%")
strDomain = wshShell.ExpandEnvironmentStrings("%USERDOMAIN%")
strHostname = wshShell.ExpandEnvironmentStrings("%COMPUTERNAME%")
command = URL_PREFIX+"://"+ServerName+"/adpb/registration?username="+strUser+"&domain="+strDomain+"&hostname="+strHostname+"&action=login"
'WScript.Echo command
AJAX.Open "GET", command
AJAX.Send ""
WScript.sleep(SLEEP_PERIOD)
AJAX.Abort
Set AJAX = nothing
Loop
but it is still taking 20 minutes + for users to logon.
I know If I have a the file in the startup menu It will run fine but I have neither the time nor inclination to do this on 40+ machines.
Also the users who's script timed out are now no longer logged onto untangle....this is beginning to do my head in.
If anyone has any ideas how to fix this that would be great.
One of our guys cleaned up the script and converted it to an EXE, then rolled it out to everyone's startup folder. That seems to work well. He even added a systray icon so that we know the script is running. If you have the tools to do that, give something like that a try.