Author: Jim Smith (Page 1 of 11)

Add a Windows User to Hyper-V Admin Group to allow co-Hyper-V Management

To add a user to the Hyper-V Administrators group, you must already have administrative privileges on the host machine. This process allows standard users to manage virtual machines without giving them full system administrator access.

Option 1: Use PowerShell (Fastest) 

Open Windows Terminal or PowerShell as an Administrator and run the following command: 

powershell

Add-LocalGroupMember -Group “Hyper-V Administrators” -Member “UserName”

Note: Use code with caution.

(Replace “UserName” with the actual account name or “Domain\UserName” for domain accounts).

Option 2: Use Command Prompt 

Run Command Prompt as an Administrator and use this syntax:

cmd

net localgroup “Hyper-V Administrators” “UserName” /add

Note: Group names are localized; if your Windows installation is not in English, use net localgroup to find the exact name of the Hyper-V group on your system.

Option 3: Use Computer Management (Graphical) 

This is the most common method for Windows 10, 11, and Windows Server users.

  1. Right-click the Start button and select Computer Management.
  2. Navigate to System Tools > Local Users and Groups > Groups.
  3. In the right pane, double-click Hyper-V Administrators.
  4. Click Add… and enter the username of the person you want to add.
  5. Click Check Names to verify, then click OK and Apply.
  6. Important: The user must log out and log back in for the changes to take effect.

Sharepoint excel shortcut guide

If someone shared a SharePoint Excel file with you — through a link, a Teams message, or an email — you might find yourself navigating through your browser every time you need to open it. This guide shows you how to create a desktop shortcut that opens the file directly in the Excel desktop app, with full editing and co-authoring support.

Before you start

Make sure you have:

  1. Microsoft Excel installed on your computer (Microsoft 365 or Office 2016/2019)
  2. Access to the shared SharePoint file — you should already be able to open it in your browseR

This guide is for Windows. The shortcut approach works best when you have the Excel desktop app installed — not just Excel Online in the browser.


Step 1: Find your Excel installation path

Before creating the shortcut, confirm where Excel is installed on your machine.

Locate EXCEL.EXE on your computer

  1. Open File Explorerand navigate to:C:\Program Files\Microsoft Office\root\Office16\
  2. Look for EXCEL.EXEin that folder.
  3. If it’s not there, try:C:\Program Files (x86)\Microsoft Office\root\Office16

Alternatively, search for Excel in the Start menu, right-click it, and choose Open file location to find the exact path.

Step 2: Get the direct SharePoint file URL

This is the most important step. You need the direct file path — not a sharing link. Sharing links (which look like sharepoint.com/:x:/s/…) don’t reliably open in Excel desktop and may open read-only.

Open the file and copy its direct path

  1. Open the shared file in your browser using whatever link you were given.
  2. In Excel Online, clickFilein the top-left corner.
  3. At the bottom of the menu, click“Open in Desktop”to launch the file in the Excel desktop app.
  4. Once open in Excel desktop, click File → Info.
  5. You will see the SharePoint path listed at the top of the Info page. Click Copy Path.

The path should look something like this:

https://yourcompany.sharepoint.com/sites/YourSite/Shared%20Documents/Folder/YourFile.xlsx

If the path ends with ?web=1, remove that part before using it in your shortcut. That parameter forces the file to open in the browser.

Step 3: Create the desktop shortcut

Build the shortcut with the Excel path and file URL

  1. Right-click an empty area of yourDesktop.
  2. ChooseNew → Shortcut.
  3. In the location field, enter the following — replacing the URL with the one you copied in Step 2:

“C:\Program Files\Microsoft Office\root\Office16\EXCEL.EXE” “https://yourcompany.sharepoint.com/sites/YourSite/Shared%20Documents/Folder/YourFile.xlsx”

  1. ClickNext, give the shortcut a friendly name (e.g.2026 Budget), then clickFinish.

Create Shortcut dialog on the naming screen, ready to click Finish

The second screen of the Create Shortcut wizard — give it a clear name and click Finish.

Both the Excel path and the SharePoint URL must each be wrapped in their own set of quotation marks, with a space between them. Missing quotes are the most common cause of this not working.

Step 4: Test it

Double-click your new shortcut. Excel should launch and open the file directly — no browser, no “Open in Desktop App” prompt. The file should open in edit mode with AutoSave enabled in the top-left corner.

If AutoSave is toggled on in the top-left of Excel, you’re in full co-authoring mode. Any colleagues who open the file at the same time will see your changes in real time.


Troubleshooting

The file opens as read-only

This usually means a sharing link was used instead of the direct file path. Go back to Step 2 and make sure you’re copying the path from File → Info inside the Excel desktop app — not from the browser address bar. If a yellow “Read-Only” banner appears, click Edit Workbook on that banner to unlock it for that session.

Excel can’t connect to the URL

The URL copied from the browser address bar may contain ?web=1 or be in a _layouts/15/Doc.aspx format — both are browser-only URLs that Excel cannot open directly. Use the path from File → Info inside Excel desktop instead.

The file opens in the browser instead of Excel

Make sure both paths in the shortcut target are surrounded by their own quotation marks. A missing quote will cause Windows to misread the command and fall back to opening the URL in your default browser.

Excel isn’t at the Office16 path

Press Win + S, type Excel, right-click the result, and choose Open file location to find the exact path to EXCEL.EXE on your machine.


Co-authoring: working on the file with others

Once the file is stored on SharePoint and everyone opens it using the direct path (like the shortcut you just created), co-authoring happens automatically. You’ll see a colored cursor for each person editing simultaneously, and changes sync in real time — no manual saving needed.

For co-authoring to work smoothly, make sure:

  1. Everyone opens the file from SharePoint — not from a locally downloaded copy saved to their PC.
  2. AutoSave is turned on in the top-left corner of Excel.
  3. Everyone has edit permission to the file in SharePoint, not just view access.

Quick recap

  • ✓Find your Excel path — usually C:\Program Files\Microsoft Office\root\Office16\EXCEL.EXE
  • ✓Open the file in Excel desktop and copy the direct path from File → Info
  • ✓Remove?web=1from the end of the URL if present
  • ✓Create a new shortcut on your desktop with both paths in their own quotes
  • ✓Double-click to open — AutoSave on means co-authoring is live

Deploying Google Drive Shared Drives to Client Workstations

When a client uses Google Workspace and needs their team to access Shared Drives from Windows workstations, we use a standardized PowerShell deployment script. This article walks through what the script does, how to use it, and what the end-user experience looks like.


Prerequisites

Before running the script, make sure the following are in place:

  • Google Drive for Desktop must be installed on the workstation. Download it from https://dl.google.com/drive-file-stream/GoogleDriveSetup.exe and run it before launching the script. The script will check for the installation and exit if it’s not found.
  • Administrator access on the target machine. The script uses #Requires -RunAsAdministrator and will not run without elevation.
  • User accounts must already exist on the machine. The script reads existing profiles from C:\Users and lets you choose which ones to target.

What the Script Does

The script (Ultrex-Deploy-GoogleDrive.ps1) performs four steps:

Step 1: Verify Google Drive Installation

The script looks for C:\Program Files\Google\Drive File Stream\launch.bat. If it’s found, it moves on. If not, it displays the download link and exits so you can install it first and re-run.

Step 2: Configure Auto-Start

It adds a registry entry under HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run so that Google Drive File Stream launches automatically when any user signs in. If the entry already exists, it skips this step.

Step 3: Create the Launcher Script

A VBScript file is created at C:\InstallSharedDrive\LaunchGoogleDrive.vbs. This is the logic behind the desktop shortcut. When executed, it:

  1. Checks if GoogleDriveFS.exe is already running.
  2. If not, launches it via launch.bat and waits up to 30 seconds for the mapped drive to appear.
  3. If the drive is mounted, it opens it in File Explorer.
  4. If the drive isn’t available (user hasn’t signed in yet), it displays a popup with step-by-step sign-in instructions directing them to the system tray icon.

The drive letter is configurable — the script prompts you at the start (defaults to G:).

Step 4: Deploy Desktop Shortcuts

Two shortcuts are placed on each selected user’s desktop:

  • Create Shared Drive — Uses the batch file icon. Runs the VBScript launcher, which starts Google Drive if needed and opens the mapped drive letter. This is the primary shortcut for users who need to reconnect or access their Shared Drive.
  • Google Drive — Uses the Google Drive icon. Simply launches Google Drive for Desktop. Useful if a user just needs to start the app or access settings.

Both shortcuts are also placed in C:\Users\Default\Desktop so that any future user accounts created on the machine will automatically receive them on first login.


The Script

Copy the entire block below and paste it into the RMM PowerShell terminal.

powershell

# Ultrex IT - Google Drive Shared Drive Deployment

#Requires -RunAsAdministrator

# --- CONFIGURATION -----------------------------------------------------------

$DriveLetter = Read-Host "Enter drive letter (default: G)"
if ([string]::IsNullOrWhiteSpace($DriveLetter)) { $DriveLetter = "G" }
$DriveLetter = $DriveLetter.TrimEnd(":", " ").ToUpper()

Write-Host ""
Write-Host "Available user profiles:" -ForegroundColor Cyan
$allProfiles = Get-ChildItem "C:\Users" -Directory |
    Where-Object { $_.Name -notmatch '^(Public|Default|Default User|All Users)$' } |
    Select-Object -ExpandProperty Name

$i = 0
foreach ($p in $allProfiles) {
    $i++
    Write-Host "  $i. $p"
}
Write-Host ""
Write-Host "Enter user numbers separated by commas (e.g. 1,2,3)" -ForegroundColor Cyan
Write-Host "Or type 'all' to deploy to everyone" -ForegroundColor Cyan
$selection = Read-Host "Selection"

if ($selection -eq "all") {
    $TargetUsers = $allProfiles
} else {
    $indices = $selection -split "," | ForEach-Object { [int]$_.Trim() - 1 }
    $TargetUsers = @()
    foreach ($idx in $indices) {
        if ($idx -ge 0 -and $idx -lt $allProfiles.Count) {
            $TargetUsers += $allProfiles[$idx]
        }
    }
}

Write-Host ""
Write-Host "Deploying to: $($TargetUsers -join ', ')" -ForegroundColor Green
Write-Host "Drive letter: ${DriveLetter}:\" -ForegroundColor Green
Write-Host ""

# --- STEP 1: Install Google Drive for Desktop --------------------------------
Write-Host "--- Step 1: Google Drive for Desktop ---" -ForegroundColor Cyan

$driveExe = "C:\Program Files\Google\Drive File Stream\launch.bat"

if (Test-Path $driveExe) {
    Write-Host "  [OK]   Google Drive for Desktop found" -ForegroundColor Green
} else {
    Write-Host "  [FAIL] Google Drive for Desktop is NOT installed" -ForegroundColor Red
    Write-Host ""
    Write-Host "  Please install Google Drive for Desktop before running this script." -ForegroundColor Yellow
    Write-Host "  Download from: https://dl.google.com/drive-file-stream/GoogleDriveSetup.exe" -ForegroundColor Yellow
    Write-Host ""
    Read-Host "  Press any key to exit..."
    exit
}

Write-Host ""

# --- STEP 2: Ensure Google Drive auto-starts for all users -------------------
Write-Host "--- Step 2: Auto-Start Configuration ---" -ForegroundColor Cyan

$runKey = "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Run"
$existing = Get-ItemProperty $runKey -Name "GoogleDriveFS" -ErrorAction SilentlyContinue

if ($existing) {
    Write-Host "  [SKIP] Auto-start already configured" -ForegroundColor Yellow
} else {
    try {
        New-ItemProperty -Path $runKey -Name "GoogleDriveFS" `
            -Value """C:\Program Files\Google\Drive File Stream\launch.bat""" `
            -PropertyType String -Force | Out-Null
        Write-Host "  [OK]   Auto-start enabled for all users" -ForegroundColor Green
    } catch {
        Write-Host "  [WARN] Could not set auto-start: $($_.Exception.Message)" -ForegroundColor Yellow
    }
}

Write-Host ""

# --- STEP 3: Create the launcher VBScript ------------------------------------
Write-Host "--- Step 3: Creating Launcher Script ---" -ForegroundColor Cyan

$launcherDir = "C:\InstallSharedDrive"
$launcherScript = "$launcherDir\LaunchGoogleDrive.vbs"

if (-not (Test-Path $launcherDir)) {
    New-Item -Path $launcherDir -ItemType Directory -Force | Out-Null
}

$vbsContent = @"
Set objShell = CreateObject("WScript.Shell")
Set objFSO = CreateObject("Scripting.FileSystemObject")

' Check if Google Drive is already running
Set objWMI = GetObject("winmgmts:\\.\root\cimv2")
Set colProcesses = objWMI.ExecQuery("SELECT * FROM Win32_Process WHERE Name = 'GoogleDriveFS.exe'")

If colProcesses.Count = 0 Then
    driveExe = "C:\Program Files\Google\Drive File Stream\launch.bat"
    If objFSO.FileExists(driveExe) Then
        objShell.Run """" & driveExe & """", 0, False
        WScript.Sleep 5000
        attempts = 0
        Do While Not objFSO.DriveExists("${DriveLetter}:") And attempts < 25
            WScript.Sleep 1000
            attempts = attempts + 1
        Loop
    Else
        MsgBox "Google Drive is not installed." & vbCrLf & "Please contact Ultrex IT support.", vbExclamation, "Google Drive"
        WScript.Quit
    End If
End If

If objFSO.DriveExists("${DriveLetter}:") Then
    objShell.Run "explorer.exe ${DriveLetter}:\"
Else
    MsgBox "Google Drive is not ready yet." & vbCrLf & vbCrLf & "To sign in:" & vbCrLf & "1. Look for the Google Drive icon in the system tray (bottom right)" & vbCrLf & "2. Click it and sign in with your Google account" & vbCrLf & "3. Once signed in, click this shortcut again" & vbCrLf & vbCrLf & "Need help? Contact Ultrex IT.", vbExclamation, "Google Drive"
End If
"@

Set-Content -Path $launcherScript -Value $vbsContent -Force
Write-Host "  [OK]   Launcher script created at $launcherScript" -ForegroundColor Green

Write-Host ""

# --- STEP 4: Deploy shortcuts ------------------------------------------------
Write-Host "--- Step 4: Deploying Desktop Shortcuts ---" -ForegroundColor Cyan

$iconPath = "C:\Program Files\Google\Drive File Stream\drive_fs.ico"
if (-not (Test-Path $iconPath)) {
    $found = Get-ChildItem "C:\Program Files\Google\Drive File Stream" -Filter "*.ico" -Recurse -ErrorAction SilentlyContinue | Select-Object -First 1
    if ($found) { $iconPath = $found.FullName }
}

$desktops = @()
foreach ($user in $TargetUsers) {
    $desktops += @{ Path = "C:\Users\$user\Desktop"; Name = $user }
}
$desktops += @{ Path = "C:\Users\Default\Desktop"; Name = "Default" }

foreach ($entry in $desktops) {
    $desktop = $entry.Path
    $displayName = $entry.Name

    try {
        if (-not (Test-Path $desktop)) {
            New-Item -Path $desktop -ItemType Directory -Force | Out-Null
        }

        Remove-Item "$desktop\Google Drive G.lnk" -Force -ErrorAction SilentlyContinue

        $wshShell = New-Object -ComObject WScript.Shell

        $shortcut = $wshShell.CreateShortcut("$desktop\Create Shared Drive.lnk")
        $shortcut.TargetPath = "wscript.exe"
        $shortcut.Arguments = """$launcherScript"""
        $shortcut.WorkingDirectory = $launcherDir
        $shortcut.Description = "Launch Google Drive and open ${DriveLetter}:\"
        $shortcut.IconLocation = "C:\Program Files\Google\Drive File Stream\launch.bat,0"
        $shortcut.Save()

        $shortcut2 = $wshShell.CreateShortcut("$desktop\Google Drive.lnk")
        $shortcut2.TargetPath = "C:\Program Files\Google\Drive File Stream\launch.bat"
        $shortcut2.Description = "Google Drive"
        if (Test-Path $iconPath) {
            $shortcut2.IconLocation = "$iconPath,0"
        }
        $shortcut2.Save()

        Write-Host "  [OK]   $displayName" -ForegroundColor Green
    } catch {
        Write-Host "  [FAIL] $displayName - $($_.Exception.Message)" -ForegroundColor Red
    }
}

Write-Host ""
Write-Host "=== Deployment Complete ===" -ForegroundColor Cyan
Write-Host ""
Write-Host "  Drive:      ${DriveLetter}:\" -ForegroundColor Gray
Write-Host "  Users:      $($TargetUsers.Count) + Default profile" -ForegroundColor Gray
Write-Host "  Auto-start: Enabled" -ForegroundColor Gray
Write-Host "  Launcher:   $launcherScript" -ForegroundColor Gray
Write-Host ""
Write-Host "  Each user must sign in to Google Drive on first use." -ForegroundColor Yellow
Write-Host "  They click the system tray icon and authenticate with their Google account." -ForegroundColor Yellow
Write-Host ""
Write-Host "  Ultrex IT - deployment complete" -ForegroundColor Cyan

How to Run It

  1. Confirm Google Drive for Desktop is already installed on the target machine. If not, push the installer first via RMM or install it manually during a remote session.
  2. Open the RMM PowerShell terminal for the target device (e.g., Atera → Manage → Terminal → PowerShell).
  3. Copy the entire contents of Ultrex-Deploy-GoogleDrive.ps1 and paste it into the RMM PowerShell session.
  4. The script will prompt for two things directly in the terminal:
    • Drive letter — Press Enter to accept the default (G), or type a different letter if needed.
    • User selection — The script lists all user profiles on the machine. Enter the numbers separated by commas (e.g., 1,3,5,7) or type all to deploy to every profile.
  5. The script runs through all four steps and reports success or failure for each user.

Example Session

Enter drive letter (default: G):
[Enter]

Available user profiles:
  1. anniek
  2. christinaw
  3. davec
  4. ginaa
  5. jamesa

Enter user numbers separated by commas (e.g. 1,2,3)
Or type 'all' to deploy to everyone
Selection: all

Deploying to: anniek, christinaw, davec, ginaa, jamesa
Drive letter: G:\

--- Step 1: Google Drive for Desktop ---
  [OK]   Google Drive for Desktop found

--- Step 2: Auto-Start Configuration ---
  [OK]   Auto-start enabled for all users

--- Step 3: Creating Launcher Script ---
  [OK]   Launcher script created at C:\InstallSharedDrive\LaunchGoogleDrive.vbs

--- Step 4: Deploying Desktop Shortcuts ---
  [OK]   anniek
  [OK]   christinaw
  [OK]   davec
  [OK]   ginaa
  [OK]   jamesa
  [OK]   Default

=== Deployment Complete ===

End-User Experience

After deployment, each user will see two new icons on their desktop. Here’s what their first-time experience looks like:

  1. User signs in to Windows.
  2. Google Drive for Desktop auto-launches (via the registry Run key).
  3. The Google Drive system tray icon appears (bottom-right of the taskbar).
  4. User clicks the “Create Shared Drive” shortcut on their desktop.
  5. If they haven’t signed in to Google yet, a popup appears with instructions to click the system tray icon and authenticate with their Google account.
  6. After signing in, the G: drive mounts automatically.
  7. Clicking “Create Shared Drive” again opens G:\ in File Explorer.

From that point forward, Drive auto-starts on login, G: mounts automatically, and the shortcut just opens the drive.


Troubleshooting

Script exits immediately saying Google Drive is not installed Install Google Drive for Desktop first, then re-run the script. The installer can be downloaded from the URL shown in the error message.

Shortcuts appear but the drive letter never mounts The user needs to sign in to Google Drive. Have them click the Google Drive icon in the system tray and authenticate with their Google Workspace account.

Drive mounts as a different letter than expected Google Drive for Desktop assigns the drive letter automatically. If G: is already taken, it may use H: or another letter. You can re-run the script with the correct letter, or configure the drive letter in Google Drive’s settings (system tray icon → Preferences → Google Drive → Drive letter).

Shortcuts don’t appear for a new user account The script deploys to the Default profile, so new accounts should get the shortcuts automatically. If they don’t, re-run the script and select the new user.


File Locations

ItemPath
Deployment scriptUltrex-Deploy-GoogleDrive.ps1
VBScript launcherC:\InstallSharedDrive\LaunchGoogleDrive.vbs
Auto-start registry keyHKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\GoogleDriveFS
Google Drive installationC:\Program Files\Google\Drive File Stream\
User shortcutsC:\Users\<username>\Desktop\Create Shared Drive.lnk
Default profile shortcutC:\Users\Default\Desktop\Create Shared Drive.lnk

How to block Copilot inside of MS365 installed apps

If you paste this into admin powershell, it disables copilot inside of MS365 installed apps. Doesn’t change apps online, or the ability to use other AI’s, even copilot website, BUT it does block the copilot add on items in all installed office apps (Being used for PCA here shortly)

$regPath = “HKCU:\Software\Policies\Microsoft\office\16.0\common\officeai”
if (!(Test-Path $regPath)) { New-Item -Path $regPath -Force }
Set-ItemProperty -Path $regPath -Name “TurnOffCallout” -Value 1

$privacyPath = “HKCU:\Software\Policies\Microsoft\office\16.0\common\privacy”
if (!(Test-Path $privacyPath)) { New-Item -Path $privacyPath -Force }
Set-ItemProperty -Path $privacyPath -Name “disconnectedstate” -Value 2

Renaming Device with command prompt in Atera

If you want to rename a device in Atera without opening the device through cmd

click Manage dropdown

Click run as System command prompt

Type: wmic computersystem where name=”%COMPUTERNAME%” call rename name=”NEWCOMPUTERNAME”

Hit return

Type in the console shutdown /r /t 0

Hit return

Reload Atera after the computer has restarted the computer should be renamed

Fixing Blank “Save As” Dialog Window in Adobe Acrobat

Fixing Blank “Save As” Dialog Window in Adobe Acrobat

Issue

From ticket #5088 – When using Save As in Adobe Acrobat, the dialog box may appear blank, preventing you from saving the file as another name in another location. This issue can occur on both Windows and macOS.


Cause

Adobe Acrobat attempts to “display online storage options” during the save process. A preference setting can cause the dialog to render incorrectly.


References

https://helpx.adobe.com/acrobat/kb/blank-save-as-dialog-mac.html


Resolution

Disable the online storage option in Acrobat:

  1. Open Adobe Acrobat Preferences
    • Go to Edit > Preferences (Windows) or Adobe Acrobat > Preferences (macOS).
  2. Navigate to General Settings
    • In the left-hand menu, select General.
  3. Disable Online Storage Option
    • Locate:
      Show online storage when saving files
    • Toggle this OFF.
  4. Restart Acrobat
    • Close and reopen Adobe Acrobat to apply changes.

Alternate Workaround

If the issue persists or you need a quick alternative:

  • Use Microsoft Print to PDF (Windows) or Print to PDF (macOS):
    • From the print dialog, select the PDF printer option.
    • Save the file manually after printing.
  • Go to the location the file is saved in originally in File Explorer
    • Copy and paste the file from that location into the destination folder path

Export Public Folder Calendar Events to a Shared Calendar in Outlook Classic

Export Public Folder Calendar Events to a Shared Calendar in Outlook Classic

Overview

This guide explains how to export calendar events from a Public Folder in Outlook Classic (desktop app) and import them into a shared calendar using an .ics file.


Steps

  1. Open the Public Folder Calendar
    • Launch the Outlook Classic desktop app.
    • Navigate to the Public Folder calendar you want to export.
  2. Save the Calendar as an .ICS File
    • Go to File > Save Calendar.
    • Select the desired folder.
    • (Optional) Set a date range for the events you want to export.
    • Save the file in .ics format to your preferred location.
  3. Import Events into the Shared Calendar
    • Open the destination shared calendar in Outlook Classic.
    • Drag and drop the saved .ics file directly into the shared calendar.
    • All events from the Public Folder calendar will be imported.

Notes

  • Ensure you have the necessary permissions for both the Public Folder and the shared calendar.
  • Large calendars may take a few moments to process after import.

Resolving iPhone Sign-In Failures for Outlook & Teams After Tenant Migration

Resolving iPhone Sign-In Failures for Outlook & Teams After Tenant Migration

Purpose of This Article

  1. What this article aims to show you:
    This guide explains how to resolve an issue where an iPhone refuses to sign into Outlook or Microsoft Teams after a Microsoft 365 tenant-to-tenant migration, even after reinstalling apps or resetting passwords.
  2. When to use this information:
    Use this process any time a migrated user’s iPhone cannot authenticate to Outlook/Teams, especially when:
    • Credentials are correct but apps repeatedly fail to sign in
    • The old tenant’s identity is still cached on the device
    • Standard app reinstalls do not fix the issue
      This problem occurs because iOS stores stubborn Microsoft account caches that persist across reinstalls.

Step-by-Step Resolution Procedure

1. Use Microsoft Edge’s Hidden Reset Function (Most Effective Step)

This clears deeply embedded Microsoft account tokens that Outlook/Teams cannot remove themselves.

  1. Install Microsoft Edge from the App Store (temporary use only).
  2. Open Edge and in the URL bar enter: edge://signin-internals
  3. Tap RemoveAllAccounts.
  4. A red confirmation pop-up will appear—this is expected.
  5. Close Edge completely.
  6. Reinstall Outlook and Teams after completing all steps below.

Why this matters:
Edge exposes internal MSAL (Microsoft Authentication Library) caches that other Office apps cannot purge. Clearing this nearly always resolves post-migration authentication issues on iOS.


2. Remove Old Work Accounts from iOS System Settings

Even if the old work account isn’t showing in Outlook, iOS may still be storing it at the system level.

  1. Go to Settings → Mail → Accounts and delete any old work accounts.
  2. Also check under:
    • Settings → Passwords & Accounts (older iOS versions)
    • Settings → Apple ID → iCloud → Safari → temporarily disable Safari sync
  3. Go to Settings → Safari → Clear History and Website Data.

This flushes stored autofill credentials and account references that cause the sign-in loop.


3. Remove Old Accounts From Any Office App

If the user has Word/Excel/OneDrive installed, they may still hold the old tenant account.

  1. Open any Office app (Word, Excel, OneDrive, etc.).
  2. Tap the user’s profile icon (top left).
  3. Go to Settings → Storage Accounts.
  4. Swipe left on any old or incorrect accounts → Delete.

This removes the identity from Microsoft’s app-wide shared credential store.


4. Fully Reinstall the Apps After Clearing Credentials

Once the caches and accounts have been removed:

  1. Delete Outlook and Teams.
  2. Restart the iPhone (important reset of system caches).
  3. Reinstall the apps fresh from the App Store.
  4. Sign in with new tenant credentials.

At this point, authentication should succeed without referencing the old tenant.


Recap / Final Notes

This issue happens frequently after Microsoft 365 tenant migrations because iOS retains hidden Microsoft identity caches that aren’t cleared during normal reinstall procedures. Using Edge’s internal account purge, combined with removing accounts from iOS settings and Office app storage, ensures all legacy tenant tokens are removed.

Once all caches are cleared and the apps reinstalled, the user should be able to log into Outlook and Teams normally using their new tenant credentials.

If this process fails (rare), escalate internally before re-engaging Microsoft support—this procedure resolves the majority of cases.

Warranty Replacement Handling Procedure

Warranty Replacement Handling Procedure

Purpose of This Article

  1. What this article covers:
    This document outlines the full internal process for handling warranty replacements for client equipment purchased through Ultrex IT.
  2. When you should use this information:
    Use this procedure any time a client requests a hardware replacement and it appears the device may fall under Ultrex’s 1-year warranty window. These steps ensure financial accuracy, proper inventory handling, and consistent tracking across teams.

Warranty Replacement Process

1. Confirm Warranty Eligibility

Before taking any action:

  • Verify with leadership (typically [Name/Manager]) that the client is approved for a free warranty replacement.
  • Confirm:
    • The device was originally sold by Ultrex IT.
    • The purchase date is within 1 year.

No replacement should proceed without this confirmation.


2. Have Brandi Process the Replacement Sale

Once approved:

  • Contact Brandi to create a zero-cost sale for the replacement item.
  • This ensures:
    • Accurate billing records
    • Proper documentation in the billing spreadsheet
  • Do not manually remove or adjust inventory yourself yet.

3. Physically Perform the Replacement

  • Swap out the defective/failed item with the new, zero-cost replacement.
  • Collect the old device and return it to the office.

4. Tag the Returned Item

When bringing the old item back:

  • Tag or label it clearly as:
    “Bring-Back – Warranty Replacement – NON INVENTORY”
  • This ensures the item is not mistaken for active stock.

5. Test the Returned Item

Once tagged:

  • Evaluate whether the returned hardware:
    • Still functions
    • Has partial functionality
    • Can be used internally
    • Holds any salvage or resale value

Document basic findings if needed.


6. Get Approval for Final Inventory Handling

After testing:

  • Check back with leadership (same approval point as Step 1) with results of the test.
  • They will determine whether the unit should be:
    • Added back to usable internal inventory
    • Stored for parts
    • Recycled/disposed
    • Otherwise tracked as non-inventory equipment

Do not add anything back into inventory without confirmation.


Final Notes

Warranty replacements must follow this workflow to maintain proper billing, inventory accuracy, and accountability. Always secure approval before starting, ensure Brandi logs the zero-cost transaction, and tag returning hardware appropriately. Clear communication and documentation at each step prevent inventory errors and unexpected costs.

Thanks for following this process!

« Older posts

© 2026 Ultrex Staff

Theme by Anders NorenUp ↑