Solaris 一般桌上管理系統環境:進階使用者和系統管理員指南

建立註冊套裝軟體的範例

下列步驟建立現存名為 BestTextEditor 的非桌上管理系統的智慧型應用程式註冊套裝軟體。

您需要知道的有關 ``BestTextEditor'' 的資訊

範例假定下列有關 BestTextEditor 應用程式的事實:

註冊 "BestTextEditor" 的步驟

以下逐步的程序註冊了 BestTextEditor。

  1. 修改字型與色彩資源。

    在 BestTextEditor 的 app-defaults 檔案中,刪除所設定的如下資源:

    • 文字的字型

    • 前景與背景的色彩

  2. 建立應用程式 root。

    建立目錄:

     /Desktop_approots/BTE

    如果您正在整合現存應用程式,您應該在應用程式的安裝位置以外之處建立應用程式根目錄;否則,當您更新應用程式時,您所建立的配置檔案可能會被刪除。

  3. 建立註冊套裝軟體目錄。

    建立這些目錄:

     /desktop_approots/BTE/dt/appconfig/types/C       
         /desktop_approots/BTE/dt/appconfig/help/C
         /desktop_approots/BTE/dt/appconfig/icons/C
         /desktop_approots/BTE/dt/appconfig/appmanager/C/ BestTextEditor
  4. 建立應用程式的動作與資料類型。

    1. 建立動作與資料類型定義的配置檔案:

       /desktop_approots/BTE/dt/appconfig/types/C/BTE.dt
    2. 建立執行 BestTextEditor 的動作定義:

      ACTION BTEditor   		
          { 				
           WINDOW_TYPE				NO_STDIO 
           ICON						BTERun   					
           DESCRIPTION				Double-click this icon or drop \  
      									a BTE data file on it to run \
                                BestTextEditor.
        	  EXEC_STRING				/usr/BTE/BTEd%Arg_1% 		
          }
    3. 建立 *.bte 檔案的資料類型:

      DATA_ATTRIBUTES 	BTEDataFile 		
          { 				
           DESCRIPTION				BestTextEditor data file.
           ICON						BTEData 				
           ACTION				      Open, Print 		
          }      		
      
          DATA_CRITERIA         BTEDataFileCriteria1 		
          { 				
           DATA_ATTRIBUTES_NAME	BTEDataFile 				
           NAME_PATTERN          *.bte 				
           MODE							f   		
          }
    4. 建立 *.tpl 檔案的資料類型:

      DATA_ATTRIBUTES BTETemplateFile 		
          { 					
           DESCRIPTION			BestTextEditor template file. 			
           ICON					BTETempl 				
           ACTION					Open 		
          }  		
      
          DATA_CRITERIAL BTETemplateFileCriteria1  		
          {  				
           DATA_ATTRIBUTES_NAME	  BTETemplateFile
      	  NAME_PATTERN				  *.tpl  				
           MODE						  f      		
          }
    5. 建立 *.bte 檔案的開啟動作。

      ACTION Open 		
          { 				
           ARG_TYPE			BTEDataFile 				
           TYPE				MAP
           MAP_ACTION		BTEditor 		
          }
    6. 建立 *.bte 檔案的列印動作。

      此為將會列印資料檔案的簡單列印動作。這些動作需要 LPDEST 環境變數的值並略過 -s 列印選項。(如果 LPDEST未設定,動作可能會失敗。)

      ACTION Print 		
          { 				
           ARG_TYPE				BTEDataFile 				
           TYPE 	    			MAP   				
           MAP_ACTION			BTEPrintData  		
          }
      ACTION BTEPrintData   		
          { 				
           WINDOW_TYPE				NO_STDIO  
           EXEC_STRING				BTEPrint -d $LPDEST%Arg _1% 		
          }

      此為 BTEPrintData 動作與伴隨的程序檔之另一種版本。它們共同處理未設定的 LPDEST 或是如果要求靜音列印的情況。

      ACTION BTEPrintData  		
          { 				
           WINDOW_TYPE				NO_STDIO 		
      	  EXEC_STRING				/usr/BTE/bin/BTEenvprint \ 
                               %(File)Arg_1% 		
          }

      /usr/BTE/bin/BTEenvprint 程序檔的內容為:

      # BTEenvprint   
          #!/bin/sh   
          DEST=""   
          SILENT=""  
          if [ $LPDEST ] ; then 
          DEST="-d $LPDEST "
       	 fi  
          BTEPrint $DEST SILENT $1
    7. 建立 *.tpl 檔案的開啟動作:

      ACTION Open 		
          {  				
           ARG_TYPE				BTETemplateFile 				
           TYPE      			MAP   				
           MAP_ACTION			BTEditor  		
          }
    8. 建立 *.tpl 檔案的列印動作:

      ACTION Print   		
          {  				
           ARG_TYPES			BTETemplateFile  		
      	  TYPE				MAP   				
           MAP_ACTION		NoPrint   		
          }

      無列印是內建的動作,會顯示對話框告訴使用者無法列印的檔案。

  5. 將輔助說明檔案放在註冊套裝軟體中。

    1. 將輔助說明檔案放在下列位置中:

      /desktop_approots/BTE/dt/appconfig/help/C/BTEHelp.sdl   
          /desktop_approots/BTE/dt/appconfig/help/C/graphics/BTE1.xwd   	
          /desktop_approots/BTE/dt/appconfig/help/C/graphics/BTE2.xwd
    2. 建立檔案:

      /desktop_approots/BTE/dt/appconfig/types/C/BTEhelp.dt. 

      將以下動作定義放在檔案中:

      ACTION BTEHelp   		
          {  				
           WINDOW_TYPE		NO_STDIO   				
           EXEC_STRING  	/usr/dt/bin/dthelpview -helpVolume \ 
                          BTEHelp.sdl   				
           DESCRIPTION				Opens the BestTextEditor help volume.  		
          }
  6. 建立應用程式的圖示。

    使用圖示編輯程式來建立圖示。表 5-3 顯示使用的大小指導。

    表 5-3 圖示大小指導

    名稱 

    大小 

    基本名稱 .t.pm

    16 乘 16 

    基本名稱 .m.pm

    32 乘 32 

    基本名稱 .l.pm

    48 乘 48 

    在目錄 /desktop_approots/BTE/dt/appconfig/icons/C 中建立這些圖示檔案:

    • 代表執行應用程式的動作的圖示:BTERun.t.pmBTERun.m.pmBTERun.l.pm

    • 代表 *.bte 檔案的圖示:BTEData.t.pmBTEData.m.pm

    • 代表 *.tpl 檔案的圖示:BTETempl.t.pmBTETempl.m.pm

    • 代表應用程式群組(用於步驟 7 中)的圖示:BTEApp.t.pmBTEApp.m.pm

  7. 建立應用程式群組。

    1. 如果您尚未如此作,請建立此目錄。

      /desktop_approots/BTE/dt/appconfig/appmanager/C/BestTextEditor
    2. 此步驟是選擇性的。其藉由建立資料類型以及相關的應用程式群組動作來提供應用程式群組圖示的唯一圖示。如果您省略此步驟,應用程式群組將會使用預設圖示。

      將下列資料類型與動作定義增加至檔案 /desktop_approots/BTE/dt/appconfig/types/C/BTE.dt。 資料類型指定由 BestTextEditor 應用程式群組所使用的圖示。動作會提供和內建應用程式群組相同的開啟與列印行為。

      DATA_ATTRIBUTES BestTextEditorAppGroup   		
          {  				
           ACTIONS	OpenInPlace,OpenNewView   				
           ICON  		BTEApp  		
          }
      DATA_CRITERIA BestTextEditorAppGroupCriterial 		
          { 				
           DATA_ATTRIBUTES_NAME    BestTextEditorAppGroup 				
           MODE		               d	 				
           PATH_PATTERN	            */appmanager/*/BestTextEditor
          }
      ACTION Open  		
          {  				
           ARG_TYPE			BestTextEditorAppGroup
           TYPE				MAP 				
           MAP_ACTION		OpenAppGroup 		
          }
      ACTION Print
        {  				
           ARG_TYPE			BestTextEditorAppGroup
           TYPE				MAP 				
           MAP_ACTION		PrintAppGroup 		
          }
    3. 在將會啟動應用程式的應用程式群組中建立圖示。如果要如此作,請建立此檔案:

      /desktop_approots/BTE/dt/appconfig/appmanager/C \  		
           /BestTextEditor/BTEditor

      並使檔案成為可執行的。

    4. 在將會開啟輔助說明卷次的應用程式群組中建立動作檔案。如果要如此作,請建立此檔案:

      /desktop_approots/BTE/dt/appconfig/appmanager/C \  		
           /BestTextEditor/BTEHelp

      並使檔案成為可執行的。

    5. 將其它檔案放在應用程式群組中;例如, "README " 檔案、範例資料與範本檔案。

  8. 註冊應用程式。

    在終端機模擬器視窗中:

    1. 登入為 root。

    2. 執行指令:

      /usr/dt/bin/dtappintegrate -s /desktop_approots/BTE
    3. 開啟桌面工具應用程式群組並連按兩下重新載入應用程式。