Package resource: Convert from type 'SINT64' to type 'UINT32[]' failed

Not sure if it is truly DSC question
Trying this

$prop = @(
            @{
                Ensure     = "Present"
                Name       = "Windows Assessment and Deployment Kit - Windows 10"
                Path       = "$($Node.SourcePath)\Windows Assessment and Deployment Kit\adksetup.exe"
                ProductId  = "39ebb79f-797c-418f-b329-97cfdf92b7ab"
                Arguments  = "/quiet /features OptionId.DeploymentTools OptionId.WindowsPreinstallationEnvironment"
                ReturnCode = 0
            }
            @{
                Ensure     = "Present"
                Name       = "Microsoft Deployment Toolkit (6.3.8443.1000)"
                Path       = "$($Node.SourcePath)\Microsoft Deployment Toolkit\MicrosoftDeploymentToolkit_x64.msi"
                ProductId  = "9547DE37-4A70-4194-97EA-ACC3E747254B"
                ReturnCode = 0
            }
        )


$prop | foreach {Invoke-DscResource -Name Package -ModuleName PSDesiredStateConfiguration -Method Set -Property $PSItem -Verbose -ea stop}

I am getting the error:

VERBOSE: Perform operation 'Invoke CimMethod' with following parameters, ''methodName' = ResourceSet,'className' = MSFT_DSCLocalConfigurationManage r,'namespaceName' = root/Microsoft/Windows/DesiredStateConfiguration'. VERBOSE: An LCM method call arrived from computer WIN10-HV with user sid S-1-5-21-703272665-1885382538-3850543241-1002. Convert property 'ReturnCode' value from type 'SINT64' to type 'UINT32[]' failed At line:13, char:2 Buffer: irectResourceAccess"; };^

insta

At C:\Program Files\WindowsPowerShell\Modules\cMDTBuildLab\Deploy\Deploy_MDT_Server_simple.ps1:68 char:18

  • … | foreach {Invoke-DscResource -Name Package -ModuleName PSDesiredSta …
  •             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    
    • CategoryInfo : SyntaxError: (root/Microsoft/…gurationManager:String) [], CimException
    • FullyQualifiedErrorId : MiClientApiError_Failed

Any ideas?

The installer is returning a 64-bit number and the LCM is expecting a 32-bit one. I’ve not run into this before - I’m honestly not sure what you’d do to fix it. I’ll ask around.

Thank you Don, I need your help.

Do you get different results or similar if you put it in a config and compile it (vs. using invoke-DSCResource?)

Yes, compiling the configuration and applying it does work
You may check the source here (GitHub:) pvs043/cMDTBuildLab/blob/master/cMDTBuildLab.psm1