Microsoft KB Archive/927112: Difference between revisions
(importing KB archive) |
m (Text replacement - "&" to "&") |
||
(2 intermediate revisions by the same user not shown) | |||
Line 72: | Line 72: | ||
Set oArgs = WScript.Arguments | Set oArgs = WScript.Arguments | ||
If oArgs.Length | If oArgs.Length <> 2 Then | ||
WScript.Echo "usage:" | WScript.Echo "usage:" | ||
WScript.Echo " | WScript.Echo ">cscript ChangeAuthentication.vbs <ApplicationName> <on/off>" | ||
Else | Else | ||
AppName = oArgs(0) | AppName = oArgs(0) | ||
Line 95: | Line 95: | ||
oApps.Populate | oApps.Populate | ||
WScript.Echo("Searching " & | WScript.Echo("Searching " & stAppName & "...") | ||
For Each oApp In oApps | For Each oApp In oApps | ||
If UCase(oApp.Name) = UCase(stAppName) Then | If UCase(oApp.Name) = UCase(stAppName) Then | ||
WScript.Echo("Found " & | WScript.Echo("Found " & stAppName & ". ") | ||
Exit For | Exit For | ||
Else | Else | ||
' WScript.Echo("AppName " & | ' WScript.Echo("AppName " & oApp.Name & " No Match.") | ||
End If | End If | ||
Next | Next | ||
If oApp.Value("Activation") | If oApp.Value("Activation") <> 0 Then | ||
WScript.Echo("AppName " & | WScript.Echo("AppName " & oApp.Name & " is not Library Application.") | ||
EnableAuthentication = -1 | EnableAuthentication = -1 | ||
Exit Function | Exit Function |
Latest revision as of 14:18, 21 July 2020
Article ID: 927112
Article Last Modified on 10/11/2007
APPLIES TO
- Microsoft Windows Server 2003 Standard Edition (32-bit x86)
- Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)
- Microsoft Windows Server 2003, Enterprise Edition
- Microsoft Windows Server 2003, Standard x64 Edition
- Microsoft Windows Server 2003, Enterprise x64 Edition
- Microsoft Windows Server 2003, Datacenter x64 Edition
- Microsoft Windows Server 2003, Enterprise Edition for Itanium-based Systems
- Microsoft Windows Server 2003, Datacenter Edition for Itanium-Based Systems
SYMPTOMS
In the Component Services administrative tool in Microsoft Windows Server 2003, you cannot clear the Enable Authentication check box for a Component Object Model (COM)+ library application.
CAUSE
This problem occurs because of an issue in the data update process that occurs between the user interface for the Component Services administrative tool and the COM+ catalog.
WORKAROUND
To work around this problem, you can use a Visual Basic script to modify the authentication property of a COM+ library application. To create a .vbs file and to run the Visual Basic script, follow these steps:
- Start Notepad.
Copy the following script into the Notepad file.
Option Explicit Dim AppName Dim oArgs Dim lRet Dim Switch Set oArgs = WScript.Arguments If oArgs.Length <> 2 Then WScript.Echo "usage:" WScript.Echo ">cscript ChangeAuthentication.vbs <ApplicationName> <on/off>" Else AppName = oArgs(0) Switch = oArgs(1) lRet = EnableAuthentication(AppName, Switch) End If '========================================================= ' EnableAuthentication ' Param stAppName COM+ Application name ' Param stSwitch on - check "Authentication", off - uncheck ' ========================================================= Function EnableAuthentication(stAppName, stSwitch) Dim oCatalog Dim oApps Dim oApp Set oCatalog = CreateObject("ComAdmin.COMAdminCatalog") Set oApps = oCatalog.GetCollection("Applications") oApps.Populate WScript.Echo("Searching " & stAppName & "...") For Each oApp In oApps If UCase(oApp.Name) = UCase(stAppName) Then WScript.Echo("Found " & stAppName & ". ") Exit For Else ' WScript.Echo("AppName " & oApp.Name & " No Match.") End If Next If oApp.Value("Activation") <> 0 Then WScript.Echo("AppName " & oApp.Name & " is not Library Application.") EnableAuthentication = -1 Exit Function End If If UCase(stSwitch) = UCase("on") Then oApp.Value("Authentication") = 0 ElseIf UCase(stSwitch) = UCase("off") Then oApp.Value("Authentication") = 1 Else WScript.Echo("Switch is invalid.") EnableAuthentication = -1 Exit Function End If oApps.SaveChanges() WScript.Echo("Finished.") EnableAuthentication = 0 End Function
- Save the file as ChangeAuthentication.vbs.
- At a command prompt, type the following command, and then press ENTER:
cscript ChangeAuthentication.vbs
ApplicationName Setting
Notes
ApplicationName
represents the name of the COM+ library application for which you want to change the authentication property.Setting
represents the setting for the authentication property. Type on to enable authentication. Type off to disable authentication.- If you use the Visual Basic script to disable authentication, the user interface for the Component Services administration tool still displays a selected Enable Authentication check box.
STATUS
Microsoft has confirmed that this is a bug in the Microsoft products that are listed in the "Applies to" section.
MORE INFORMATION
Steps to reproduce the problem
- Click Start, click Run, type control admintools, and then click OK.
- Double-click Component Services.
- Expand Component Services, expand Computers, and then expand My Computer.
- Right-click COM+ Applications, point to New, and then click Application.
- Click Next.
- Click Create an empty application.
- Type a name for the COM+ application, click Library application, click Next, and then click Finish.
- Expand COM+ Applications, right-click the name of the COM+ application that you created in steps 4 through 7, and then click Properties.
- Click the Security tab.
- Clear the Enable Authentication check box, and then click OK.
- Right-click the name of the COM+ application that you created in steps 4 through 7, and then click Properties.
- Click the Security tab.
The Enable Authentication check box is selected.
Keywords: kbtshoot kbprb kbexpertiseinter KB927112