Rx_
Nothing In Moderation
- Local time
- Today, 02:28
- Joined
- Oct 22, 2009
- Messages
- 2,803
Can anyone suggest any down side to using this?
It has seemed to be good for 50 concurrent users. Would like to avoid any unexpected problems as the user base grows.
On a Citrix deployment of Access, Access will run on an Aplication Server. In my case, the Application Server only runs Access and Excel. Excel is used for reporting. Each user has a folder created and runs their own private front-end of Access linked to SQL Server.
Access is a split database with the Access front-end on the Applicaiton Server and Linked Tables to a SQL Server hosted on a dedicated server.
At this point, each Access during run-time didn't take up that much resources. Even dozens of them running currentlly didn't take up much resource.
I added this code to boost the Priority of Access as it starts up.
This would run on a users desktop too.
It has seemed to be good for 50 concurrent users. Would like to avoid any unexpected problems as the user base grows.
On a Citrix deployment of Access, Access will run on an Aplication Server. In my case, the Application Server only runs Access and Excel. Excel is used for reporting. Each user has a folder created and runs their own private front-end of Access linked to SQL Server.
Access is a split database with the Access front-end on the Applicaiton Server and Linked Tables to a SQL Server hosted on a dedicated server.
At this point, each Access during run-time didn't take up that much resources. Even dozens of them running currentlly didn't take up much resource.
I added this code to boost the Priority of Access as it starts up.
This would run on a users desktop too.
Code:
Public Sub BoostPriority()
' in Main (switchboard) Form_Load call BoostPriority
' Verified this worked on Windows 7 and 64 bit Win Server (for Citrix distribution)
' Rx_ example: substitute msaccess.exe with notpad.exe
' Start application, use Windows Task Manager to check before/after
Dim strComputer As String
Dim objWMIService As Object
Dim colProcesses As Object
Dim objProcess As Object
Const ABOVE_NORMAL = 32768
Const HIGH = 128
On Error Resume Next
10 strComputer = "."
20 Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
30 Set colProcesses = objWMIService.ExecQuery _
("Select * from Win32_Process Where Name = 'msaccess.exe'")
40 For Each objProcess In colProcesses
50 objProcess.SetPriority (HIGH)
60 Next
'MsgBox "Testing Please hit OK to continue", vbOKOnly, "Run Level " & Err.Number
Err.Clear
70 Set objWMIService = Nothing
80 Set colProcesses = Nothing
90 Set objProcess = Nothing
End Sub