2016-09-07 1 views
0

C#을 사용하여 첫 번째 PowerShell 이진 모듈을 개발할 계획입니다. cmdlet은 기본적으로 프로덕션 서버에 연결하고 서비스 상태를 나열합니다.이진 Cmdlet 서식 파일

Status, NameDisplayName 속성과 함께 MachineName 속성을 출력하고 싶습니다. (나는이 작업을 수행 할 수 Get-AppService | select MachineName,Status,Name을 할 수 있습니다.)

내가 쓴 가지고 .format.ps1xml 파일을 사용하는 방법에 대한 읽고

:

<?xml version="1.0" encoding="utf-8" ?> 
<Configuration> 
    <ViewDefinitions> 
    <View> 
     <Name>service</Name> 
     <ViewSelectedBy> 
     <TypeName>System.ServiceProcess.ServiceController</TypeName> 
     </ViewSelectedBy> 
     <TableControl> 
     <TableHeaders> 
      <TableColumnHeader> 
      <Width>20</Width> 
      </TableColumnHeader> 
      <TableColumnHeader> 
      <Width>8</Width> 
      </TableColumnHeader> 
      <TableColumnHeader> 
      <Width>18</Width> 
      </TableColumnHeader> 
      <TableColumnHeader> 
      <Width>38</Width> 
      </TableColumnHeader> 
     </TableHeaders> 
     <TableRowEntries> 
      <TableRowEntry> 
      <TableColumnItems> 
       <TableColumnItem> 
       <PropertyName>MachineName</PropertyName> 
       </TableColumnItem> 
       <TableColumnItem> 
       <PropertyName>Status</PropertyName> 
       </TableColumnItem> 
       <TableColumnItem> 
       <PropertyName>Name</PropertyName> 
       </TableColumnItem> 
       <TableColumnItem> 
       <PropertyName>DisplayName</PropertyName> 
       </TableColumnItem> 
      </TableColumnItems> 
      </TableRowEntry> 
     </TableRowEntries> 
     </TableControl> 
    </View> 
    </ViewDefinitions> 
</Configuration> 

나는에만 적용되도록이를 넣을 위치를 모른다 내 cmdlet. 지금은 Import-Module을 사용하여 Visual Studio의 bin \ Debug 폴더에서 내 DLL을 가져옵니다.

답변

1

Update-FormatData를 사용하여 .format.ps1xml 파일을 가리킬 수 있습니다. Link to TechNet

업데이트 : this 대답에서 그는 C# 모듈이로드 될 때 스크립트를 실행하는 방법을 설명합니다.

+0

고맙지 만 C# 코드를 통해 어떻게 호출 할 수 있습니까? – hsimah

+0

전설, 정확히 내가 알아야 할 것이 었습니다. 고맙습니다. – hsimah