I am using SolutionPackager to extract PCF controls from an exported unmanaged solution. After running the extract command Customization.xml has reference to the custom control but I do not see Controls folder in it. This is causing issues when I try to repack the same contents.
Am I missing something? Does Solution Packager not support extracting custom controls?
Thanks @ryanspain you were absolutely right. I thought I was using the latest version.
Hi @PowerMaverick,
What version of Solution Packager are you using? I am using 9.1.0.45.
I gave this a try just now and it appears to be working as expected - steps I followed below:
1. Install tooling
I installed the tooling that contains Solution Packager use this PowerShell command found on the docs website.
2. Export unmanaged solution
I created an empty solution and included a simple text PCF control I made.
3. Unpack unmanaged solution
I ran the below command from the Solution Packager (../Tools/CoreTools/) directory to unpack the solution ZIP file I extracted from my environment.
.\SolutionPackager.exe /action: Extract /zipfile: "C:\temp\PCF_TestSolution.zip" /folder: "C:\temp\PCF_TestSolution_Extracted"
This resulted in the below structure in my specified extract folder:
📁PCF_TestSolution_Extracted
|-📁Controls
| |-📁rsnet_RyanSpain.NET.TextInputControl
|-📁Other
4. Pack extract solution contents
Using the very same command with Pack substituted in for Extract, I packed the above contents back into a solution ZIP file.
.\SolutionPackager.exe /action: Pack /zipfile: "C:\temp\PCF_TestSolution.zip" /folder: "C:\temp\PCF_TestSolution_Extracted"
I was able to successfully import the packaged solution file into my environment without issue.
Hope this helps in some way or form!
Ryan
Hi @PowerMaverick,
I gave this a try just now and it appears to be working as expected - steps I followed below:
1. Install tooling
I installed the tooling that contains Solution Packager use this PowerShell command found on the docs website.
2. Export unmanaged solution
I created an empty solution and included a simple text PCF control I made.
3. Unpack unmanaged solution
I ran the below command from the Solution Packager (../Tools/CoreTools/) directory to unpack the solution ZIP file I extracted from my environment.
.\SolutionPackager.exe /action: Extract /zipfile: "C:\temp\PCF_TestSolution.zip" /folder: "C:\temp\PCF_TestSolution_Extracted"
This resulted in the below structure in my specified extract folder:
📁PCF_TestSolution_Extracted
|-📁Controls
| |-📁rsnet_RyanSpain.NET.TextInputControl
|-📁Other
4. Pack extract solution contents
Using the very same command with Pack substituted in for Extract, I packed the above contents back into a solution ZIP file.
.\SolutionPackager.exe /action: Pack /zipfile: "C:\temp\PCF_TestSolution.zip" /folder: "C:\temp\PCF_TestSolution_Extracted"
I was able to successfully import the packaged solution file into my environment without issue.
Hope this helps in some way or form!
Ryan
Hi @PowerMaverick,
I gave this a try and did not encounter any issues - steps I followed below.
1. Download tooling
Using this documentation, I installed version 9.1.0.45 of the tooling from NuGet (easy as running a PowerShell command).
2. Export unmanaged solution
The solution contains a simple text input control I made.
3. Unpack the unmanaged solution
I ran the below command from within the Solution Packager executable to extract the unmanaged solution ZIP file.
.\SolutionPackager.exe /action: Extract /zipfile: "C:\temp\PCF_TestSolution.zip" /folder: "C:\temp\PCF_TestSolution_Extracted"
I observed the below structure that include a Controls directory with my custom PCF control inside.
PCF_TestSolution_Extracted
|- Controls
| |-rsnet_RyanSpain.NET.TextInputControl
|- Other
4. Pack the extract solution contents
Again, from the Solution Packager directory, I ran the below command to pack the extracted contents back into the same ZIP they came from.
.\SolutionPackager.exe /action: Pack /zipfile: "C:\temp\PCF_TestSolution.zip" /folder: "C:\temp\PCF_TestSolution_Extracted"
I didn't encounter any errors and was able to import the packed solution into my environment.
I hope this helps some way or another!
Ryan
WarrenBelz
85
Most Valuable Professional
Michael E. Gernaey
65
Super User 2025 Season 1
mmbr1606
55
Super User 2025 Season 1