maurice-daly / DriverAutomationTool

Home of the Driver Automation Tool
https://www.msendpointmgr.com
BSD 2-Clause "Simplified" License
382 stars 114 forks source link

[Error] - Method invocation failed because [System.Object[]] does not contain a method named 'op_Division'. #450

Open MikhailCompo opened 1 year ago

MikhailCompo commented 1 year ago

======== Dell ConfigMgr Latitude 5330 DRIVER PROCESSING STARTED ======== DriverAutomationTool 1/19/2023 11:30:51 AM 9312 (0x2460)

ATDMare commented 1 year ago

I've had a similar issue as well and i think its related to DAT not cleaning up stuck or failed BIT Transfers.

Job state is "Transferred Transferred Transferring" Looking at the powershell suggests that its pulling in multiple BIT Transfer jobs with the same name and then its crashing when trying to see how those jobs are doing as its not expecting there to be more than one...

To check this i ran Get-BitsTransfer on the machine i use for DAT (powershell as admin) and it listed 4 or 5 JobIDs with the display name "Latitude 5430-DriverDownload" I then ran Get-BitsTransfer | Remove-BitsTransfer to remove the Jobs and tried DAT again. This time it downloaded and packaged fine.

Not 100% sure the best way to implement this as a permanent fix maybe using the JobID instead of DisplayName or clearing out the Job queues on load... But for now i'm going to manually check the Get-BitsTransfer before setting DAT going...

EvilerBetty commented 1 year ago

I've been running into this problem too for a few months now. The problem seems to start at some point when multiple driver packages are being downloaded. If I End Task on DAT and start it again, it will usually continue to do this on the very first driver package download attempt.

All the BITS clear / reset tricks do not seem to help. But after a reboot it will download driver packs again for a bit until it starts again, and I have to reboot again.

When it happens, it just loops until I kill the task or reboot.

image

ATDMare commented 1 year ago

Yeah seems its struggling with displaying the download status in the log if there's more than one thing happening. The actual files seem to download fine its just the logging part of the program thats crashing. Older versions let you access the powershell so it was easier to make changes yourself but hopefully its an easy fix for them to implement.

Out of interest do you see anything by trying the allusers tag on the get-bit command? Get-BitsTransfer -AllUsers

I kept running it while the DAT was running and it was consistently showing the files being downloaded and then cleared...

EvilerBetty commented 1 year ago

I'm not having the same experience. Once it starts this loop I can let it run for hours and nothing gets packaged.

Of course after time there are different driver packs available for download, but right now if I leave any of these selected they will trigger this condition. If I uncheck all 4, the process completes without any errors.

Precision 5520 XPS 15 9510 Latitude 5420 Latitude 7320

image

ATDMare commented 1 year ago

Yeah you're getting similar Errored jobs as me just needing the -AllUsers parameter. If you try running the below in powershell (as admin) Get-BitsTransfer -AllUsers | Remove-BitsTransfer

Then try just selecting the 5520 as an example and see if it downloads. If it does then its related to the issue I'd had, If not then yeah must be something else that's not working for you. Out of the models you've listed we've only got the 5420 so i'll give that a download from my side and see if i get any different errors.