During a file server migration to OneDrive for Business, engineering files such as CAD drawings, 3D models, source code, and simulation outputs are often skipped or left behind. This happens because engineering file types frequently exceed OneDrive’s path length limit, contain unsupported characters, or are blocked by sync rules. This guide explains the technical reasons engineering files get missed and provides step-by-step methods to find and move those files manually or through PowerShell.
Key Takeaways: Locate and Migrate Stuck Engineering Files
- OneDrive sync limits: Paths longer than 400 characters and file names over 255 characters cause silent failures for engineering files.
- Migration scanner tools: Use Microsoft’s SharePoint Migration Tool with the –EnableAllFeatures flag to detect blocked engineering file types.
- Manual file relocation: Shorten folder paths and rename files to remove unsupported characters before re-uploading.
Why Engineering Files Are Missed During OneDrive Migration
Engineering files often have long file names and deep folder structures. For example, a CAD assembly file might be stored in Projects\2024\Engine\V3\assembly\final_revision_2024_12_01\engine_block.SLDPRT. This path can easily exceed OneDrive’s maximum path length of 400 characters. Additionally, engineering tools generate file names containing brackets, hash symbols, or non-ASCII characters that OneDrive blocks. File types like .DLL, .EXE, .ISO, .VHDX, and .VSDX are blocked by default in OneDrive sync. The SharePoint Migration Tool (SPMT) logs these skipped items but does not move them. The result is a partial migration where critical engineering files remain on the file server.
Path Length and Character Restrictions
OneDrive for Business enforces a 400-character maximum for the full path including the file name. Engineering projects frequently use nested folder names like Design_Documents\CAD_Models\Assembly_Files\Rev_05\. When a file name such as engine_block_final_revision_with_tolerance_calculations.SLDPRT is added, the total path exceeds the limit. OneDrive silently skips these files. Character restrictions also apply: the characters ~ " # % & : < > ? / \ { | } are not allowed. Engineering file names containing version tags like v2.1#final or model_v2(revised) will fail.
Blocked File Types in OneDrive Sync
OneDrive’s default sync rules block certain file extensions for security reasons. Blocked types include executable files (.EXE, .COM, .BAT, .CMD), script files (.PS1, .VBS, .JS), and system files (.DLL, .SYS, .VXD). Engineering software often uses .DLL files for plugins or .EXE files for custom tools. These files are not synced and will not appear in OneDrive after migration. The admin can override some blocks in the Microsoft 365 admin center, but the default policy during migration leaves them behind.
Steps to Identify and Migrate Missing Engineering Files
This process requires access to the original file server, the SharePoint Migration Tool, and global admin rights in Microsoft 365. Run these steps in order.
Step 1: Run a Migration Report to Find Skipped Files
- Open the SharePoint Migration Tool
Launch SPMT on the file server. Select Start your first migration or New migration from the dashboard. - Choose the file server source
Select File share as the source type. Enter the UNC path to the engineering folder, for example\\SERVER\Projects\Engineering. - Set the target to OneDrive
Select OneDrive for Business as the destination. Enter the target user’s OneDrive URL, typicallyhttps://[tenant]-my.sharepoint.com/personal/[user]. - Enable detailed logging
In the Advanced settings, check Enable detailed logging and Scan only. This runs a scan without moving files. Click Start scan. - Review the scan results
After the scan, open the log file located in%AppData%\Microsoft\SPMT\Logs. Look for lines containing Blocked, Skipped, or File name too long. Export these entries to a CSV file using the Export button in SPMT.
Step 2: Fix Path Length and File Name Issues
- Identify paths exceeding 400 characters
Open the exported CSV. Filter the Error column for PathTooLong or FileNameTooLong. Note the full paths. - Shorten deep folder structures
On the file server, move files from deeply nested folders to a flatter structure. For example, changeProjects\2024\Engine\V3\assembly\final_revision\toProjects\Engine_V3\assembly\. Use Windows File Explorer or robocopy with the/MOVEflag. - Rename files with unsupported characters
Replace characters~ " # % & : < > ? / \ { | }with underscores or hyphens. For example, renamemodel_v2#final.SLDPRTtomodel_v2_final.SLDPRT. Use PowerShell:Get-ChildItem -Recurse | Where-Object { $_.Name -match '[~"#%&:<>?/\\{|}]' } | Rename-Item -NewName { $_.Name -replace '[~"#%&:<>?/\\{|}]', '_' } - Re-run the migration scan
In SPMT, create a new scan for the same source folder. Confirm that the previously skipped files now appear in the Ready to migrate list.
Step 3: Migrate Blocked File Types by Changing Sync Policy
- Open the Microsoft 365 admin center
Go to Admin centers > SharePoint > Policies > Access control > Blocked file types. - Remove engineering file types from the block list
Locate the extensions .DLL, .EXE, .ISO, .VHDX, and .VSDX in the list. Click Remove for each. This change applies tenant-wide and may take up to 15 minutes to propagate. - Run the full migration
In SPMT, select Migrate instead of Scan only. Choose the same source and target. Monitor the progress in the SPMT dashboard. After completion, verify the files appear in the target OneDrive library.
If Engineering Files Still Have Issues After the Main Fix
Some engineering files remain stubborn even after following the steps above. The three most common residual problems and their solutions are listed below.
Files with # or % in the name still fail
OneDrive treats the hash symbol # as a URL fragment identifier. Even after renaming, the file may not sync if the folder name still contains #. Check all parent folder names. Rename any folder containing #, %, or & using Windows File Explorer or PowerShell: Get-ChildItem -Directory -Recurse | Where-Object { $_.Name -match '[#%&]' } | Rename-Item -NewName { $_.Name -replace '[#%&]', '_' }
Large engineering files exceed the 250 GB per file limit
OneDrive for Business has a maximum file size of 250 GB. Engineering files like simulation outputs or 3D scan data can exceed this. Check the file size in Windows File Explorer. If the file is larger than 250 GB, compress it using 7-Zip or WinRAR into 200 GB chunks. Upload each chunk separately. Alternatively, store the file in an Azure Blob Storage container and link it from OneDrive.
OneDrive sync reports blocked files after migration
If files were migrated but then blocked from syncing to the user’s device, the issue is the client-side sync policy. Open OneDrive settings > Sync and backup > Advanced settings > Files. Ensure Block file types is not enabled. If it is, clear the list or remove specific engineering extensions. Restart OneDrive by right-clicking the cloud icon and selecting Pause syncing then Resume syncing.
Migration Scan vs Full Migration: Key Differences
| Item | Migration Scan (SPMT Scan Only) | Full Migration (SPMT Migrate) |
|---|---|---|
| Purpose | Identify files that will be skipped or blocked | Move files from source to OneDrive |
| File transfer | No files are moved | All eligible files are copied to the target |
| Logging detail | Detailed error list for each blocked file | Summary log with transfer status |
| Impact on source | No changes to source folder structure | Files remain in source unless you enable deletion |
| When to use | Before any migration to preview issues | After fixing all detected problems |
Run a migration scan first to catch all path length, character, and blocked type issues. Fix them, then run the full migration. This approach reduces the number of missing engineering files to near zero.