Author Posts

September 4, 2014 at 3:33 am

Hi,

I tried creating the custom resource by following the blog using XDscResourceDesigner
http://blogs.msdn.com/b/powershell/archive/2013/11/19/resource-designer-tool-a-walkthrough-writing-a-dsc-resource.aspx

I am able to import the module but when I run the Get-DscResource then I am getting follwing error ::

CheckResourceFound : The term 'AppPoolServiceAccount' is not recognized as the name of a Resource.
At
C:\windows\system32\windowspowershell\v1.0\Modules\PSDesiredStateConfiguration\PSDesiredStateConfiguration.psm1:2264
char:13
+ CheckResourceFound $name $resources
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [Write-Error], WriteErrorException
+ FullyQualifiedErrorId : Microsoft.PowerShell.Commands.WriteErrorException,CheckResourceFound

I have also checked the folder structure it is as below:

C:\Program Files\Windows Powershell\Modules
|
|(Folder)
|
ResourceName.psd1(File)
|(Folder)
|
|(Folder)
|
.psm1 (file)
.schema.mof (file)

Any Help is appreciated 🙂

September 4, 2014 at 3:59 am

I think your original post might have contained angle brackets, which the forum software currently eats and tries to process as HTML. Here's what the folder structure should look like:

C:\Program Files\WindowsPowerShell\Modules\ModuleName
                                                     \ModuleName.psd1
                                                     \DSCResources
                                                                  \ResourceModuleName
                                                                                     \ResourceModuleName.psm1
                                                                                     \ResourceModuleName.schema.mof

ModuleName and ResourceModuleName can be anything you like, so long as they match up between the folders and files. The schema.mof file will typically assign a friendly name to your classes so people don't have to remember something like PSHOrg_cSmbShare.

September 4, 2014 at 4:12 am

Thanks for the reply ,

The folder structure is same as that you mentioned but path to the Modules folder is C:\Program Files\WindowsPowerShell\Modules and this path is included in the PSModulePath.

September 4, 2014 at 5:20 am

Whoops, you're right. I had "WindowsPowerShell" on the brain and wound up typing "Windows\PowerShell" 🙂 I'll fix the previous post.

September 4, 2014 at 6:13 am

Also, check out the DSC Resource Kit modules – they exhibit the correct structure, and it might be easier to see it right on your own system.

September 4, 2014 at 10:15 am

I don't know what your module name is, but it looks like your resource is named AppPoolServiceAccount. So your directory structure should look like this:

C:\Program Files
+ WindowsPowerShell
  + Modules
    + ModuleName
      * ModuleName.psm1
      + DSCResources
        + AppPoolServiceAccount
          * AppPoolServiceAccount.psm1
          * AppPoolServiceAccount.schema.mof

Have you imported your resource in your configuration block?

Import-DscResource -ModuleName 'ModuleName' -Name '*'   # I've never been able to import specific resources with Import-DscResource

What is the name of your resource in its schema.mof file? If it isn't the same as in the file system, it won't load. I don't remember if it is the same error you're getting, though.

[ClassVersion("1.0.0.0"), FriendlyName("AppPoolServiceAccount")]
class AppPoolServiceAccount: OMI_BaseResource
{
;