I had old Intel M.2 with 256g of storage and wanted to replace it with Samsung 980 pro 500g. I cloned disk with Macriuom reflect with partitions as they were. When I booted windows I got BSOD Inaccessible boot device.
My fix was to make sure that in UEFI(bios) I had selected that disk is UEFI and not legacy(CSM). Then pressed F4 to go to repair windows mode. And slected command prompt.
Boot files were to be recreated again due to disk clone. in command prompt run DISKPART command.
Enter command list disk to check which disk is the one you are booting from if this is noth the only one. To select right one use command select disk # (# is the number of the disk).
Then in DISKPART enter command list volume and look for partition that is labeled system or windows (normaly assigned drive letter C) and for recovery partition normaly size around 500-600Mb. In my case this partition had no assigned letter. So I used command select volume 1 (which was my recovery partition) and command assign letter=x (where x is the drive letter you want and it is free).
Now that we now which partitions are system and recovery we can exit diskpart (type EXIT and enter).
Enter this command in command prompt:
bcdboot c:\windows /s H: /f UEFI (in my case system partition was C and recovery was H). You should have succesfull msg after enter – Boot files successfully created.
Now type EXIT to close recovery command prompt and select normaly boot to windows. If everything was done properly your windows should boot normaly…
How To: Clone Windows 10 from SATA SSD to M.2 SSD (& fix inaccessible boot device) – FastStorage