reason

Well, I can't remember everything...

Tuesday, 1 December 2020

Teams: Requesting control is disabled by the sharer company's administrator

Go to the Teams Admin portal

Under Meetings, Meeting policies, check which policies you have

Make sure the meeting policy you are using has the following enabled


Next, make sure that policy is applying to the users

Under Users, click on View policies. You may need to click on the gear icon to show the column.

In my case, RestrictedAnonymousAccess was applying and overriding the settings in Global (Org-wide default)





Use the following post on Microsoft to fix
https://docs.microsoft.com/en-us/microsoftteams/meeting-policies-restricted-anonymous-access

Depending on the size of your organisation, you can use the Users page to assign the policies in bulk.

Get the user to sign out and back into the Teams client

Wednesday, 3 February 2016

Stopping the Default Email Address Policy applying to MailUsers and MailContacts, and removing the excess email addresses you accidentally added

The Default Email Address Policy applies to every object in Exchange. This will include any MailContacts or MailUsers you have created. To work around this, try the following:

First, make sure you have an Email Address Policy created for your own users. This will apply to Exchange mailboxes, Resource mailbox and any Mail-enabled groups. This will have a priority of 1

Now for the workaround.

Create a new dummy Accepted Domain

New-AcceptedDomain -Name "External Contacts" -DomainName external.contacts

Now create a new Email Address Policy

New-EmailAddressPolicy -Name "External Contacts" –EnabledPrimarySMTPAddressTemplate "SMTP:%m@external.contacts" -IncludedRecipients "MailContacts,MailUsers" -Priority 2

This will assign the email address alias@external.contacts to any future MailContacts or MailUsers

Now to remove all the additional email addresses from MailUsers and MailContacts you may have accidentally added...

The command below, will remove all email addresses, apart from the primarysmtpaddress

get-mailuser |foreach {set-mailuser -identity $_.identity -emailaddresses "SMTP:$($_.primarysmtpaddress)"}

If you get any permission errors, you need to Enable Inheritance in Security settings of their AD object

You can check to see what email addresses a MailUser has with

get-mailuser | fl identity,primarysmtpaddress,emailaddresses

Now replace get-mailuser with get-mailcontact, and set-mailuser with set-mailcontact in the commands above to complete the process



Wednesday, 3 June 2015

Deleting a Specific Email from all Exchange Mailboxes Using Powershell (eg. Spam, Phishing, Virus)

If your organisation receives a dodgy email, or someone within your organisation forwards one, here is a PS one-liner to delete it from all mailboxes in Exchange 2010

Get-Mailbox -ResultSize Unlimited | Search-Mailbox -SearchQuery 'Subject:"*Anlieferung Ihrer  Sendung 35171196631*"' -DeleteContent

Obviously, you will need to make sure your search term only targets that specific email. Luckily in the case above, it is a very unique email subject!

It is also recommended to type this command out manually, rather than copying from the page. Single and double quotes can get lost in the translation!

You can preview how many messages will be deleted by replacing -DeleteContent with -EstimateResultOnly

The more mailboxes and emails you have, the longer this will take to complete.

Another useful example is when someone accidentally sends an email to the entire company. This can be used so that the sender and intended recipient still keep their email, but everyone else does not.

Get-Mailbox -ResultSize Unlimited |?{$_.DisplayName -ne "Name of Sender"} |?{$_.DisplayName -ne "Name of Intended Recipient"}|Search-Mailbox -SearchQuery {Subject:"Subject title to search for" AND From:"Name of Sender"} -deletecontent

This does not search any PST files a user has, just their Exchange mailbox

Friday, 20 March 2015

Bad Request - Request Too Long when downloading Skype for Business Preview

If you are getting the error

Bad Request - Request Too Long

HTTP Error 400. The size of the request headers is too long.

when downloading Skype for Business Preview (Office 2016,) use Internet Explorer instead.

Thursday, 6 November 2014

Outlook 2013 IMAP Inbox Empty with Telenor Webmail (online.no)

When connecting Outlook to IMAP from Telenor (online.no) the Inbox was empty; only Sent items were available.

This is because Telenor have all the folders under the Inbox. You can see this by right clicking on the Inbox and choosing IMAP Folders. You will then see, Inbox, Inbox.Drafts, Inbox.Sent and so on

To fix this you need to set the Root folder path setting to Inbox

Open Outlook then click on File, Account Settings, then Account Settings again.
Click on your (Telenor) IMAP account and click Change
Click More Settings ... then Advanced
Under Folders it should say Root folder path:
Type Inbox
Click OK and continue to exit out of the dialogue boxes

The Inbox should now synchronise as normal.

Monday, 27 October 2014

Mouse sticking on monitor edges

This will stop the mouse pointer from sticking at the monitor edges, when moving slowly between two monitors. This seems to be happening on Windows 8.1 Update 1, and Windows Technical Preview.

Run regedit
Navigate to HKEY_CURRENT_USER\Control Panel\Desktop
Look for the value MouseMonitorEscapeSpeed
If it doesn't exsist, create a new DWORD value for it

Set the value to 1

Now go to  HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\ImmersiveShell

Create a new Key called EdgeUI

Create a new DWORD called  MouseMonitorEscapeSpeed and set the value to 1

Now restart your computer.

This is a per-user setting, so if there are multiple users on a computer, you will need to edit this setting for every user.

Tuesday, 5 August 2014

Changing to ACHI from RAID (Dell T5500)

Replacing 3x SAS disk RAID on a Perc6 controller, with a single SSD connected to the motherboard SATA ports, I needed to perform the following steps; otherwise I would get a BSOD on booting.

Run regedit
Edit the following keys so that the value is 0 instead of 3

(Windows 7)
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Msahci\Start

(Windows 8)
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\storahci\Start

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\IastorV\Start

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\atapi\Start 

Reboot, then change the BIOS settings in the from RAID to RAID/ACHI Autodetect
Make sure the SATA ports are enabled in the BIOS

Apply the BIOS settings, then reboot.

Monday, 14 April 2014

Test SQL OLE Connection String

A quick way to test or generate an OLE SQL connection string for your application

For example, troubleshooting the following UniFLOW database connection string

Provider=SQLOLEDB.1;Persist Security Info=True;User ID=<some_User>;Password=<some_password>;Initial Catalog=<Database>;Data Source=<SQL_Server>;Use Procedure for Prepare=1;Auto Translate=True;Packet Size=4096

Log on to the server running the application

Right click on the desktop and choose New -> Text document
Rename the document SQLTest.udl - the UDL extenstion is the important part

Double click the new file and a Data Link Properties wizard should pop up

You can now enter the details of the database server and test the connection

Clicking OK will save the connection string into the SQLTest.udl file. Just open it with Notepad to see the connection string.

Thursday, 6 February 2014

Remove OEM Modern UI (Metro) Apps from Windows 8.1

Use these PowerShell commands to remove any OEM Modern Apps. In this example, anything not published by Microsoft is removed. It's best to do this while in the first account you create, before joining a domain

You need to run these from an administrative PowerShell session.

Use this code first to see what will be removed:

Get-AppxPackage -AllUsers | where Publisher -notmatch "Microsoft"
This will show currently installed apps, and who has them installed 

Get-AppxProvisionedPackage -online | where PackageName -notmatch "Microsoft"
This will show apps that are part of the image Windows was deployed with

In both instances, the Sony Vaio listed McAfee Virus Control, the Intel App store, Skype and some Vaio apps.

Then to remove:

Get-AppxPackage -AllUsers | where Publisher -notmatch "Microsoft" | Remove-AppxPackage

Get-AppxProvisionedPackage -online | where PackageName -notmatch "Microsoft" | Remove-AppxProvisionedPackage - online

Friday, 6 December 2013

Getting Make and Model from WMIC for WDT/MDT

When setting up your driver folders, their names need to follow the WMIC make and model. Here are the commands to get this information.

From an elevated command prompt:

For computer model
wmic computersystem get model

 For computer make/manufacturer
wmic computersystem get manufacturer

Friday, 9 August 2013

Searching for a file using Unix command line

This will search the current directory and all sub-directories for an exact match of string in quotes

find . -name "searchstring" -print
 
Here is an example with output

[root@cacti /]# find . -name "cacti" -print
./etc/logrotate.d/cacti
./var/backups/cacti
./var/lib/mysql/cacti


You can add asterisks as a wild card. The example below finds any filename that contains the search string

[root@cacti /]# find . -name "*cacti*" -print
./etc/logrotate.d/cacti
./home/cacti-0.8.8a
./usr/libexec/webmin/cactiez
./var/backups/cacti
./var/lib/mysql/cacti

Tuesday, 30 July 2013

Change Server 2012 or Windows 8 Product Key

From the Start Screen (Modern UI) type

slui.exe 0x3

and press return

A new window should open allowing you to enter a Product Key

Monday, 29 July 2013

Office 2010 SP2 activation fails with error 0x80070190

I have an Office 2010 deployment with SP2 updates copied into the Updates folder.

On a new install, if the Activation Wizard appeared, it would not activate, giving an error

An unspecified error has occurred. Your request cannot be processed at this time. Please try again later. (0x80070190)

It seems the activation wizard is no longer automatically UAC prompting for elevated permissions.

To work around this, there are two options:

Using the Administrative Command Prompt, navigate to

C:\Program Files\Microsoft Office\Office14
 

or

C:\Program Files (x86)\Microsoft Office\Office14 

Then run

cscript ospp.vbs /act

The software activated using the MAK already provided by the Office Customisation Tool

Alternatively, if you navigate to where Office is installed and right click on an Office program and Run As Administrator eg. EXCEL, POWERPNT, WINWORD

Then GUI activation will succeed

If you are using Windows 7, you can press the Start button on your keyboard and type Word

Microsoft Word 2010 should appear at the top. Then hold down Ctrl & Shift keys, and press return. This will also launch the program as an administrator

The same also applies to Visio and Project. No Office product will activate unless performed from an administrative command prompt or explicitly running the program as Administrator

Wednesday, 10 July 2013

How to tell if you are UEFI booting into Windows

Open an administrative command prompt and type

bcdedit /enum

You should get something similar to this:

Windows Boot Manager
--------------------
identifier              {bootmgr}
device                  partition=G:
path                    \EFI\Microsoft\Boot\bootmgfw.efi
description             Windows Boot Manager
locale                  en-US
inherit                 {globalsettings}
default                 {current}
resumeobject            {c60ccebc-b3b0-11e2-a58b-f01faf015989}
displayorder            {current}
toolsdisplayorder       {memdiag}
timeout                 30

Windows Boot Loader
-------------------
identifier              {current}
device                  partition=C:
path                    \WINDOWS\system32\winload.efi
description             Windows 8.1 Preview
locale                  en-US
inherit                 {bootloadersettings}
recoverysequence        {c60ccebe-b3b0-11e2-a58b-f01faf015989}
recoveryenabled         Yes
isolatedcontext         Yes
allowedinmemorysettings 0x15000075
osdevice                partition=C:
systemroot              \WINDOWS
resumeobject            {c60ccebc-b3b0-11e2-a58b-f01faf015989}
nx                      OptIn
bootmenupolicy          Standard


Look for the path variable.

If it ends in .efi - you are UEFI booting
It will end in .exe if you are booting in the older way

Thursday, 27 June 2013

Windows 8.1 Preview fails to install

Installing through the Windows Store, when the process reached the final stages I experienced a BSOD. Subsequently, the install process rolled back.

The install error given was 0xC1900101 - 0x4000D

Looking at the BSOD information a driver called AKSDF.SYS was the cause. It seems to be some sort of licensing software, though I'm not sure where it came from or what it protects; the install date was around the same time as the installation of Fiery Printserver controller software and X-Rite i1 colour calibration software.

Uninstalling the software did not make a difference to retrying the 8.1 upgrade.

I had to manually delete all files in C:\Windows\ that matched the following pattern:

AKS*.SYS

If I only deleted AKSDF.SYS, AKSFRIDGE.SYS caused a BSOD on the next attempt. So they all had to go.

Windows 8.1 Preview successfully installed after that

Wednesday, 24 April 2013

SonicWall SSL VPN NetExtender, Mac OSX and the Microsoft RDP client

When connecting via NetExtender to a SonicWall SSL VPN appliance, RDP connections to a Windows Terminal Server may not work.

It seems the Microsoft RDP client is launched instead of the SonicWall Java-based RDP client. This fails to connect successfully. However, if you specify the IP address of the terminal server manually it will work, but most end users will not know this IP!


To work around this, create a dedicated bookmark on the SonicWall with the service set to
"Terminal Services (RDP - Java)"

It's also a good idea to install the latest NetExtender client software from Dell SonicWall by visiting

https://sslvpn.demo.sonicwall.com/

and logging into their demo system. This will update the client software on your computer to the latest version. Useful in case your SonicWall firmware is a few revisions behind!

Thursday, 14 March 2013

Install .NET 3.5 on Server 2012 or Windows 8, 10, 2012

Make sure you have the Windows 8, 10 or Server 2012 installation disc in your drive

In the example below, the installation disc is in the D:\ drive

Open an administrative PowerShell command window and enter the following:

Server 2012
Install-WindowsFeature –name NET-Framework-Core –source D:\sources\sxs

Windows 8, 10
Enable-WindowsOptionalFeature –online –featurename NetFx3 -source D:\sources\sxs

Wait until installation is complete, then run Windows Update to get the latest patches and fixes

Wednesday, 6 February 2013

Upgrade Windows 2012 Evaluation with a full version key

Open an administrative command prompt

Use
DISM /online /Get-TargetEditions
to list the versions you can upgrade to. They are listed under "Target Edition"

To upgrade from Evaluation to Standard use
DISM /online /Set-Edition:ServerStandard /ProductKey:XXXXX-XXXXX-XXXXX-XXXXX-XXXXX /AcceptEula

You should be prompted to reboot.

This will not work for Evaluation Domain Controllers. See here

Monday, 17 December 2012

Remotely Configure Hibernation and Page File Using PsExec

Download and install (copy to c:\windows) PSExec from http://technet.microsoft.com/en-us/sysinternals/bb897553.aspx

Open a command prompt on your local computer, then enter
psexec \\<remote_computer_name> -u <username> -p <password> cmd
This should will give you cmd access to the remote computer

From there enter
powercfg /hibernate off
to disable Hibernation

then
wmic computersystem where name="%computername%" set AutomaticManagedPagefile=False
to disable the system managed page file

and
wmic pagefileset where name="C:\\pagefile.sys" set InitialSize=4096,MaximumSize=4096
To set the pagefile to a fixed size of 4096 MB 

Thursday, 27 September 2012

Kill a VM via SSH on ESXi5

esxcli vm process list

note the World ID number then

esxcli vm process kill --type hard --world-id xxxxx

where xxxxx is the World ID number