Active Screen Reader - powershell

Every time I open a new folder or restart my laptop I see an "Screen Reader Detected" warning in my terminal window.
I have also tried turning "off" the accessibility Support in the terminal setting, but still no luck.
Is there any way to solve this problem. Or maybe a way to detect the screen reader so that I can turn it off.
Note: I have not installed any external screen readers. I also have turned "off" the "Narrator" in my windows 10 machine.

This can happen if you have any accessability tools installed on your device like NVDA (non-visual desktop access), and also some web dev suites as they will often include accessibility assessment tools.
These tools will toggle a registry value that can 'light up' accessibility features on apps that are designed with this in mind.
The specific key to check is here, which you can navigate to with regedit.exe:
HKEY_CURRENT_USER\Control Panel\Accessibility\Blind Access
if you have the Key On with a value of 1, then this will trigger the warning.
To remove the warning, simply set the key to 0. You can do this with PowerShell or the old school reg command.
reg add "HKCU\Control Panel\Accessibility\Blind Access" /V On /d 0
Source: https://github.com/PowerShell/PowerShell/issues/11751

Related

Allow Safely Remove Media in GPO

I have a system that I want to lock down, only running certain programs.
All is working so far when I use "Run only specified Windows applications" (under Local Computer\User Configuration\Administrative Templates\System) except when I try to add an option to remove media.
I have the policy enabled with a list of all applications I want to be able to load. And this: "rundll32.exe shell32.dll, Control_RunDLL HotPlug.dll"
but when I run my shortcut for this I just get the error "This operation has been cancelled due to restrictions in effect on this computer. Please contact your system administrator"
I saw someone online with a similar problem with rundll32.exe but that was with a printer and they got it working by adding a printui.dll. Am I missing something or doing something wrong or is this not possible? I need this option because I have to disable right click in our locked down system.

Set the Screen saver or lockscreen using script on RMM

Goal description:
I need to personalize the screen saver on all the computers at my work place to show a specific text or picture(s).
I need to be able to set and force this screen saver and all its customization's through a script, not with the UI or GPOs.
I need the screen saver to be active, to come on (after 5-10 minutes) and stay on (no screen blackout) - regardless of the state of the user logon, logoff or locked status.
I need this to apply to all machines, mostly Win 10, some win 7, Home and Pro editions
I will need to be able to change the customization/to change the text or pictures every week or so.
Here are my problems and concerns:
1) Limitations:
Any deployment of these changes needs to be made through Atera using Scripting. Atera is an RMM which supports execution of .bat and .ps1 (power-shell) files which will run on the local machine as SYSTEM or a local user account.
This is because all 150 computers are spread out over 7 different locations, and not connected to any domain or server of sorts. So, cannot use group policies.
I am not sure how I would specify a picture or multiple pictures for a (slideshow?) screen saver in a script.
I am not sure how to ensure that the screen saver will apply on a system level - like when logged off - and not just a per-user level (most REG based scripts I've seen target the HKCU for screen saver settings - see here for example)
Also, an important note- when scripts run as SYSTEM (and will need to run as such for admin privileges) references to HKCU will not effect the currently logged on user. Therefore, in order to effect "HKCU" registry edits, I would need to edit all the profiles under the HKEY_USERS hive. Not sure how I would reference those profiles in a script. Can I use a "*"? Also, how will it effect the current user if I edit their registry hive from the HKEY_USERS directory while they are logged in?
some computers are Pro while some are Home edition. The Home edition may not allow me to use certain registry keys that would create system policies, although I am unsure about this. Since we would like to enforce this, we want to block the ability to change the screen saver setting options - like is found here. This may not be an issue if we can have the script run daily to reset the settings anyway.
most REG script I've seen to change screen saver settings required the computer to restart or have the user logoff to take effect. This should not be necessary, but haven't figured out how to tell the computer to recognize the new setting without restarting
2) Conflicts
Default on windows is to timeout the screen (black) when locked after a few minutes of idle (I am sure a registry edit can change this)
some computers are going to sleep after idle (possibly a HKLM_currentcontrolset registry entry can fix this).
I currently have a scheduled task that runs on idle (after 10 minutes) which locks the screen and closes methasoft (EMR program) after an hour using a .bat file I created. In my experience, I have seen the screen saver come on, and them upon the device being locked, it would go away and instead show the login screen (like after pressing Start+L). Also, I found that during the testing for methasoft to close (I had tested where it closed within a few minutes) I found that it would bring the screen back on (after blacking out), and I am concerned that it would also kill the screen saver and bring back the lock screen.
This may not be an issue if the screen saver will come on again when idle on the lock screen.
I found this script https://abcdeployment.wordpress.com/2017/04/20/how-to-set-custom-backgrounds-for-desktop-and-lockscreen-in-windows-10-creators-update-v1703-with-powershell/ which works to set the background image for the lockscreen and the desktop. I tested it out and it works. The lockscreen takes effect immediately while the desktop image only takes effect after logging out and logging back in.
This will work for Windows 10 machines.
I still need to find code for windows 7 machines, and code to make sure the screen doesn't turn off after it goes to the lockscreen (on Windows 10 as well).
Create these registry entries for the lockscreen
REG ADD
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\PersonalizationCSP
REG ADD
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\PersonalizationCSP /v
LockScreenImagePath /t REG_SZ /d "c:\image.jpg" /f
REG ADD
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\PersonalizationCSP /v
LockScreenImageUrl /t REG_SZ /d c:\image.jpg" /f
REG ADD
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\PersonalizationCSP /v
LockScreenImageStatus /t REG_DWORD /d 1 /f

AutoHotkey ImageSearch failing to find matches

I have servers with an AutoHotkey script running on them, that I access via TeamViewer.
Sometimes AutoHotkey fails to match an ImageSearch even when the image it matches is captured from the displayed screen using Windows' Snipping Tool.
This only happens on some servers but not others. I have tried using ImageSearch *n shade variation, to no effect.
What could be causing the issue?
This can happen when TeamViewer is allowed to choose its own quality settings based on your connection to the server. If TeamViewer decides to use low quality settings for a connection, it will enable the Windows Basic Theme on the remote computer, potentially breaking AutoHotkey ImageSearch for some types of windows.
You can solve this by selecting custom settings in your own TeamViewer options when connecting to other clients.
Go to Extras -> Options -> Remote Control
Select Custom Settings from the Quality dropdown.
Slide both sliders to the max (the right).
Enable the Aero color scheme.
Disconnect from any open sessions and when you next connect, TeamViewer will not set the theme to Windows Basic.

Does install4j provide a *Completely* unattended auto update?

We are currently evaluating install4j and things are going pretty well, however I have a question about auto-update.
Currently I see options and documentation around 3 options for auto-update and the third one (no version check) seems
to be the closest to what we need. However it sounds as though it still prompts the user to actually start the download/install. Is there
any way to get around this? We are targeting our software as a service on many windows boxes in a server room, so there isn't a user
to click continue for that last step. I believe we can roll our own service to monitor for upgrades that will do a command line
install with an answers file to prevent prompting, but I'd love to know if I missed something that would allow me to utilize
install4j's auto-update.
When you go to Installer->Screens & Actions, click on the "Add" button and choose "Add application", you can choose from a number of pre-defined templates. However, they are just templates and after adding them you can change them completely.
If the updater should be automatic but still show a progress dialog, you can just set the "Default execution mode" property of the updater application to "Unattended mode with progress dialog". In that case, no screens will be shown at all.

User Initiated Kernel dump in Windows XP

I remember watching a webcast from Mark Russinovich showing the sequence of keyboard keys for a user initiated kernel dump. Can somebody refresh my memory on the exact order of the keys.
Please note this is for XP.
http://psacake.com/web/jr.asp contains full instructions, and here's an excerpt:
While it may seem odd to think about purposefully causing a Blue Screen Of Death (BSOD), Microsoft includes such a provision in Windows XP. This might come in handy for testing and troubleshooting your Startup And Recovery settings, Event logging, and for demonstration purposes.
Here's how to create a BSOD:
Launch the Registry Editor (Regedit.exe).
Go to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\i8042prt\Parameters.
Go to Edit, select New | DWORD Value and name the new value CrashOnCtrlScroll.
Double-click the CrashOnCtrlScroll DWORD Value, type 1 in the Value Data textbox, and click OK.
Close the Registry Editor and restart Windows XP.
When you want to cause a BSOD, press and hold down the [Ctrl] key on the right side of your keyboard, and then tap the [ScrollLock] key twice. Now you should see the BSOD.
If your system reboots instead of displaying the BSOD, you'll have to disable the Automatically
Restart setting in the System Properties dialog box. To do so, follow these steps:
Press [Windows]-Break.
Select the Advanced tab.
Click the Settings button in the Startup And Recovery panel.
Clear the Automatically Restart check box in the System Failure panel.
Click OK twice.
Here's how you remove the BSOD configuration:
Launch the Registry Editor (Regedit.exe).
Go to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\i8042prt\Parameters.
Select the CrashOnCtrlScroll value, pull down the Edit menu, and select the Delete command.
Close the Registry Editor and restart Windows XP.
Note: Editing the registry is risky, so make sure you have a verified backup before making any changes.
And I may be wrong in assuming you want BSOD, so this is a Microsoft Page showing how to capture kernel dumps:
https://web.archive.org/web/20151014034039/https://support.microsoft.com/fr-ma/kb/316450
As far as I know, the "Create Dump" command was only added to Task Manager in Vista. The only process I know of to do this is using the adplus VBScript that comes with Debugging Tools. Short of hooking into dbghelp and programmatically doing it yourself.
You can setup the user dump tool from Microsoft with hot keys to dump a process. However, this is a user process dump, not a kernel dump...
I don't know of any keyboard short cuts, but are you looking for like in task manager, when you right click on a process and select "Create Dump"?