2010年10月6日水曜日

コマンド一覧

1. コマンド プロンプトの起動方法
・「コマンドプロンプト」を直接起動。
 Windows がフル稼働している状態で 「スタート」メニューを開き、「プログラム」の「アクセサリ」から「コマンド プロンプト」をクリック。
・ファイル名を指定して起動
 「アクセサリ」から「コマンド プロンプト」をクリック。
1. 「スタート」メニューを開き、「ファイル名を指定して実行」を開く。
2. 「名前」に「cmd」と入力し「OK」ボタンをクリック。
・「セーフモードとコマンドプロンプト」で起動
1. Windows 起動時、各デバイスのチェックが実行された直後、「F8」キーを押す。
2. 拡張オプションメニューが表示されたら「セーフモードとコマンドプロンプト」を選択して起動。

2. コマンドを使用

・入力方法
 コマンドは、コマンドプロンプト(C:\xxxxx>)から コマンドとパラメータを入力し「Enter」キーを押すことで実行。 また、コマンドを拡張子「.bat」(DOSモードで実行する場合)または[.pl]のファイルに書き込んで、このファイル名を入力して実行することもできる。 たとえば、フロッピーディスクのルート(A:\)上の拡張子「txt」のファイルを全て C:ドライブの「Temp」フォルダ(C:\Temp)にコピーするには次のように入力。 (コマンドとパラメータは半角で入力。) 例: C:\>Copy A:\*.txt C:\Temp

・Windows のコマンドヘルプと「ヘルプとサポート」
 使用目的やオプションパラメータの使用法については、コマンドの後に半角スペース1文字と「/?」を入力して「Enter」キーを押すか、コマンドラインに「help」と入力して一覧表示されるコマンドについては、「help xxxxx」で解説が表示される。 例:C:\>Copy /?  または C:\>Help Copy
 また、スタートメニューの「ヘルプとサポート」で検索できる。 「スタート」メニューから「ヘルプとサポート」を起動し、左側の「ヘルプトピックを選びます」でどれでも1つ選んでクリック。 すると、画面の左下に「関連項目」というペインが表示されるので、その中から「ツール」を選んでクリック。 その上部に表示された「ツール」の一覧から「コマンド ライン リファレンス」を選び、アルファベット頭文字で検索。 たとえば、「Net xxxxx」は、「N」の項にある「Net サービス コマンド」。

・絶対パスと相対パス
 コマンドプロンプト では、フォルダを「ディレクトリ」という。 初心者が コマンドを使用する際に最も注意しなければならいのはパス(絶対パスと相対パス)の指定。 下記は、カレントフォルダ(C:\Windows としています)から Temp フォルダ(C:\Windows\Temp)のファイル(File1.txt)を A:\ に移動する例。

 絶対パスと相対パス
パス

入力
絶対パス C:\Windows>MOVE C:\Windows\Temp\File1.txt A:\
相対パス C:\Windows>MOVE Temp\File1.txt A:
C:\>MOVE Windows\Temp\File1.txt A:
C:\Windows\Temp>MOVE File1.txt A: 
A:\>MOVE C:\Windows\Temp\File1.txt A:

 相対パスで指定する場合は「A:」と「C:」の各々のカレントフォルダがどこなのかを理解して、それに応じた指定を行う必要がある。 上記のように、相対パスを使用する場合はカレントフォルダがどこかによって様々な指定方法が考えられる。 コマンドによってはワイルドカード(?、*)が利用できるので、効率よく使えばエクスプローラより速く処理できる。

・内部コマンド、外部コマンド、操作可能なプログラムまたはバッチファイル
 あらかじめ読み込まれている内部コマンド(COPY等)とパスを指定して起動する外部コマンド(一部のDOSコマンド等)、さらにプログラムやバッチファイル形式で保存されているものがある。 Windows XP では、パスを指定しなくてもほとんどのコマンドが実行可能。 (IF など、バッチファイルから実行するものもある。)

・カレントフォルダ(ディレクトリ)の変更  カレントフォルダの変更
変更先

入力
1つ下の「Temp」に変更 C:\>CD Temp
ルートに変更 C:\Windows>CD \
1つ上に変更 C:\Windows>CD ..
2つ上に変更 C:\Windows\Temp>CD ...

・コマンドプロンプトのカスタマイズ
 初期設定では、スクロールバーを使って300行まで遡れる。 行数を増やしたり、ウインドウのサイズを変更するには、タイトルバーを右クリックして「プロパティ」を選択。 次に、表示されるダイアログの「レイアウト」タブを開いて「画面のバッファサイズ」や「ウィンドウのサイズ」を変更。 最後に、設定変更を適用する範囲を、「現在のウィンドウだけに適用する」か、「このウィンドウを起動したショートカット」を選ぶダイアログが表示されたら、いずれかをクリックすれば設定終了。

・最新の Windows での注意
 管理者用とユーザー用があり、管理者権限のユーザーでログオンしないと正しく動作しないコマンドがある。 新しい Windows ほど DOS の機能が制限されているので、コマンドヘルプ(xxxx /? または help xxxx)や「ヘルプとサポート」で確認の上、使用する。 コマンドが有効でも無効なエラーメッセージが表示される、などの現象が発生することもある。
3.

コマンド一覧
 Windows XP で使用可能なコマンド。(それ以前の Windows 特有のコマンドは省略。「ディレクトリ」は「フォルダ」のこと。)
・代表的なコマン/コマンドラインツール
コマンド名

入力例

機能
■ディスク/フォルダ/ファイル管理関連  
ASSOC ASSOC .text=txtfile *ファイルの拡張子の関連付けを表示または変更。
ATTRIB ATTRIB -H C:\USER.DAT *ファイルの属性(アトリビュート)を表示または変更。
CACLS CACLS *ファイルのアクセス制御リスト(ACL)を表示または変更。
CD、CHDIR CD C:\WINDOWS *現在のディレクトリ(フォルダ)を表示または変更。
CHKDSK CHKDSK C: *ディスクをチェックし、状態を表示。
CHKNTFS CHKNTFS /D

*起動時のディスクのチェックを表示または変更。
CIPHER CIPHER /W:C:\WORK

NTFS ボリューム上のフォルダやファイルの暗号化と削除データの上書き。
COMP COMP A:\*.DAT D:\*.DAT /A *2個のファイルまたはファイルの集合の内容を比較。
COMPACT COMPACT /C D:\WORK.DAT *NTFSパーティション上のファイルの圧縮状態を表示または変更。
CONVERT CONVERT D: /FS:NTFS *FATボリュームをNTFSに変換。現在のドライブは変換不可。
COPY COPY A:\*.* C: /V /NoSecurity *1個以上のファイルを別の場所にコピー。
DEFRAG DEFRAG C: -V ディスクデフラグを実行。
DEL、ERASE DEL C:\TEMP\*.* *1個以上のファイルを削除。
DIR DIR WIN?.SYS /P

*ディレクトリ中のファイルやサブディレクトリの一覧を表示。
DISKCOMP DISKCOMP A: A: *2つのフロッピーディスクの内容を比較。
DISKCOPY DISKCOPY A: A: /V *フロッピーディスクの内容を別のフロッピーにコピー。
DISKPART DISKPART /? ディスク、パーティション、またはボリュームを管理。
DISKPERF DISKPERF -Y \\MYPC システムディスクパフォーマンスカウンタの起動、停止。
EXPAND EXPAND D:\WORK.CAB C:\TEMP 圧縮ファイルを復元する。
FC FC /B C:\WK1.DAT D:\WK2.DAT *2個のファイルまたはファイルの集合の内容を比較して、それらの違いを表示。
FIND FIND /I "TMP" C:\AUTOEXEC.BAT *ファイルの中からテキスト文字列を検索。
FINDSTR FINDSTR /C:"TO YOU" D:\WORK.DAT *ファイルの中から文字列を検索。
FORMAT FORMAT D: /FS:NTFS /V:MAIN_HDD /Q

*Windows で使用するためのディスクをフォーマット。
FSUTIL FSUTIL FSINFO VOLUMEINFO C:\ スパース ファイルの管理、ボリュームのマウント解除、またはボリュームの拡張を行って、再解析ポイントを管理。
FTYPE FTYPE | MORE *ファイル拡張子の関連付けで使われるファイルタイプを表示または変更。
LABEL LABEL D: SUB_FOLDER *ディスクのボリューム ラベルを作成、変更または削除。
MD、MKDIR MD WORK ディレクトリ(フォルダ)を作成。
MORE MORE WORK.TXT *出力を一度に1画面ずつ表示。
MOUNTVOL

MOUNTVOL D:\DATA\ VOL1
ボリュームマウントポイントの作成、削除、または一覧表示
MOVE MOVE C:\WORK\*.DAT D:\ *1個以上のファイルをディレクトリから別のディレクトリに移動。
POPD POPD *PUSHD コマンド で記憶されたディレクトリに変更。
PRINT PRINT /D:LPT1 FILE.TXT *テキストファイルを印刷。
PUSHD PUSHD C:\TEMP 現在のディレクトリを、指定したディレクトリに変更する前に、popd コマンドで使えるように現在のディレクトリを格納。
RECOVER RECOVER C:\WORK\CONT.EXE *不良または欠陥ディスクから読み出し可能な情報を復元。
RD、RMDIR RD C:\TEMP *ディレクトリを削除。
REN、RENAME REN C:CONFIG.SYS *.BAK *ファイルの名前を変更。
REPLACE REPLACE A:\TEST.JPG D:\WORK /A *ファイルを置き換える。
SORT SORT /+3 A:\TEST.DAT *入力を並べ替える。
TREE TREE /F *ドライブまたはパスのディレクトリ構造を図式表示。
TYPE TYPE C:\CONFIG.SYS *テキストファイルの内容を表示。
VOL VOL C: *ディスクのボリュームラベルとシリアル番号を表示。
VSSADMIN VSSADMIN LIST WRITERS ボリューム シャドウ コピー サービス管理コマンドラインツールを実行。
XCOPY XCOPY C:\TEMP D:\WORK /S /R *ファイルやディレクトリ構造をコピー。
■稼動環境確認/設定用  
AT AT 23:00 "TYPE :\PLAN.TXT" *コマンドやプログラムを指定した日時に実行。
BOOTCFG BOOTCFG /DBG1394 /ID 2 Boot.ini ファイルの設定を構成、照会、または変更。
BREAK BREAK ON *拡張 CTRL+C チェックを設定または解除。
CHCP CHCP 932 有効なコード ページ番号を表示または設定。
CLS CLS *画面を消去。
COLOR COLOR 1E *コンソールの文字と背景の既定の色を設定。
DATE DATE *日付を表示または変更。
FORCEDOS FORCEDOS /D D:\DOSPGM GAME1.EXE 指定したプログラムを強制的にMS-DOSシステムで起動。
GRAFTABL GRAFTABL /STATUS *Windowsがグラフィックモードで拡張文字セットを表示可能にする。
LOGMAN LOGMAN START PERF_LOG ローカル システムおよびリモート システム上のパフォーマンス カウンタおよびイベント トレース ログを管理およびスケジュール。
LOGOFF LOGOFF セッションを終了。
MODE MODE LPT1:,10 *システム デバイスを設定。
OPENFILES OPENFILES /DISCONNECT プリンタに関する構成情報を構成または表示。
PAGEFILECONFIG CSCRIPT PAGEFILECONFIG.VBS システムのページング ファイルである仮想メモリの設定を表示および構成。
PATH PATH C:\DOS;C:\WIN;D:\USER; *実行可能ファイルの検索パスを表示または設定。
PRNCNFG cscript PRNCNFG.vbs -g -s HRServer -p ColorPrinter_2 プリンタ ドライバを設定(.VBS)。
PRNDRVR cscript PRNDRVR.vbs -a -m "Color Printer Driver 1" -v 3 -e "Windows NT x86" ローカルまたはリモートのプリントサーバーのプリンタドライバを追加、削除、および一覧表示。
PRNJOBS cscript PRNJOBS.vbs -z -s HRServer -p ColorPrinter -j 27 印刷ジョブを一時停止、再開、キャンセル、および一覧表示。
PRNMNGR cscript PRNMNGR.vbs -a -p ColorPrinter_2 -m "Color Printer Driver1" -r lpt1: プリンタまたはプリンタ接続を追加、削除、および一覧表示。
PRNPORT cscript PRNPORT.vbs -l -s HRServer 標準 TCP/IP プリンタポートを作成、削除、一覧表示。また、ポートの構成を表示および変更。
PRNQCTL cscript PRNQCTL.vbs -z -s HRServer -p ColorPrinter_2 テストページの印刷、プリンタの一時停止と再開、およびプリンタ キューの消去。
PENTNT PENTNT -? | MORE ローカルコンピュータが Pentium プロセッサの浮動小数点除算エラーを検出し報告。
PROMPT PROMPT $P$G *コマンドプロンプトを変更。
REG REG OPERATION コンソールレジストリツールを起動。
RELOG RELOG c:\perflogs\daily_trace_log.blg -cf counter_file.txt -o c:\perflogs\reduced_log.csv -t 30 -f csv パフォーマンスカウンタをパフォーマンスカウンタログから抽出し、TSV 、CSV、BIN、SQL などの形式へ展開。
RESET RESET SESSION1 セッションをリセット。
SC SC QUERYEX MESSENGER

サービスに関する情報を取得および設定。また、サービスプログラムのテストとデバッグを行う。
SET SET TEMP=C:\WINDOWS\TEMP 環境変数を表示、設定または削除。
SCHTASKS SCHTASKS /change /tn "Virus Check" /tr C:\VirusCheck.exe 定期的または特定の時間にコマンドおよびプログラムを実行するようスケジュール。
SHUTDOWN SC START MYSERVICE ローカル コンピュータまたはリモート コンピュータをシャットダウンまたは再起動。
SYSTEMINFO SYSTEMINFO /S SYS1 /FO LIST 基本システム構成情報をシステムに照会。
TASKKILL TASKKILL /S SYSTEM /F /IM NOTEPAD.EXE /T タスクやプロセスを終了。
TASKLIST TASKLIST /SVC ローカルコンピュータまたはリモートコンピュータで実行中のアプリケーション、サービス、およびプロセス ID (PID) の一覧を表示。
TIME TIME 9:30:30 *システム時刻を表示または変更。
TITLE TITLE コマンド入力 *コマンド プロンプト ウィンドウのウインドウ タイトルを設定。
TRACERPT TRACERPT LOG1.ETL LOG2.ETL-O -REPORTREPORT タイムデータを処理し、生成されたイベントのトレース分析レポートやCSVファイルを生成できるようにする。
TYPEPERF TYPEPERF -QX PHYSICALDISK -O COUNTERS.TXT 設定されたイベントトレースプロバイダからのイベントトレースログやリアルタイムデータを処理し、生成されたイベントのトレース分析レポートやCSVファイルを生成できるようにする。
VERIFY VERIFY ON *ファイルがディスクへ正しく書き込まれたかどうかを照合するかどうかをCMD.EXEに指示。
WMIC WMIC /? Windows Management Instrumentation(WMI)を使用したシステム管理を容易にする。
■操作援助用  
COMMAND COMMAND /P MS-DOSコマンドインタプリタ(COMMAND.COM)を起動。
CMD CMD /Q /F:OFF *コマンドインタープリタの新しいインスタンスを開始。
DOSKEY DOSKEY DIRW=DIR /W *コマンドラインの編集、コマンドの再呼び出しとマクロの作成。
DRIVERQUERY DRIVERQUERY /FO CSV /SI ドライバとドライバのプロパティの一覧を照会。
EVNTCMD #pragma ADD System "Eventlog" 2147489653 構成ファイルの情報に基づいて、イベントからトラップへの変換、トラップ送信先、またはその両方を構成。
EVENTCREATE EVENTCREATE /T ERROR /ID 999 /L APPLICATION /SO WinWord /D "ログ:Winword" 管理者が指定されたイベント ログにカスタム イベントを作成できるようにする。
EVENTQUERY EVENTQUERY /L SYSTEM イベントログ中のイベントのプロパティを一覧表示。

EVENTTRIGGERS
EVENTTRIGGERS /DELETE /TID 1 /TID 2 /TIDd 4 /TID 6 ローカル コンピュータまたはリモート コンピュータのイベントトリガを表示および構成します。
EXIT EXIT /B コマンドインタプリタ(CMD.EXE)またはバッチスクリプトを終了。
HELP HELP ATTRIB Windowsコマンドのヘルプ情報を提供。
HELPCTR HELPCTR /mode "hcp://CN=Microsoft% ヘルプとサポート センターを開く。
LH、LOADHIGH LH C:\WORK\TEST.EXE UMBメモリーへプログラムをロード。
NTCMDPROMPT NTCMDPROMPT コマンドプロンプト起動後にCMD.EXEを起動
NTSD NTSD -2 システムデバッガを起動。
PERFMON PERFMON myfile_overview Windows NT 4.0 のパフォーマンス モニタの設定ファイルを使って構成された Windows XP のパフォーマンス コンソールを開けるようする。
START START TEST.EXE /M *別のウィンドウを起動して、指定したプログラムまたはコマンドを実行。
SUBST SUBST G: D:\TEST

*パスをドライブ名で置き換える。
VER VER *Windows のバージョンを表示。
■バッチファイル作成用  
CALL CALL :LABEL %* *バッチファイル中から、別のバッチファイルの呼び出し。
ECHO ECHO 正常終了しました。 *メッセージの表示、コマンド エコーのオン、オフを指定。
ENDLOCAL END LOCAL *バッチファイルでの環境変数のローカライズを終了し、setlocal コマンドを実行する前の設定に復元。
FOR FOR %A IN (*.TXT) DO TYPE %1 *一連のファイルに対して、指定したコマンドを反復して実行。
GOTO GOTO LOOP(ラベル) *バッチプログラムの中で、ラベルで識別される行に制御を移す。
IF IF ERRORLEVEL 2 GOTO END *バッチファイルの中で、条件付き処理を実行。
PAUSE PAUSE *バッチ プログラムの処理を一時中断し、続行する場合は任意のキーを押すことを求めるメッセージを表示。
REM REM ***入力プログラム*** *コメント(注釈)をバッチファイルまたは構成ファイルに追加。
SETLOCAL SETLOCAL *バッチ ファイル内の環境変数のローカライズを開始。
SHIFT SHIFT *バッチ ファイルでバッチ パラメータの位置を変更。
*MS-DOSサブシステムの構成コマンドに関しては、「ヘルプとサポート」を参照。

・主なネットワーク関連コマンド
コマンド名

機能
ARP ARP で使われる IPアドレスを物理アドレスに変換するテーブルを表示および修正。
ATMDM 非同期転送モード (ATM) ネットワークの接続や登録されたアドレスを表示。
FINGER Finger サービスを実行中のユーザー情報を表示。
FTP FTP サーバーサービスを実行中のコンピュータとのファイル転送を可能にする。
GETMAC メディア アクセス制御 (MAC) アドレス、およびネットワーク プロトコルの一覧を取得。
GPRESULT ターゲットユーザーとコンピュータのRSoP(Resultant Set of Policy)を表示。
GPUPDATE グループポリシーの設定を最新の情報に更新。
HOSTNAME

ホスト名(フルコンピュータネーム)を表示。
IPCONFIG 現在の TCP/IP ネットワーク構成を表示。
IPROUTE NWLink IPXルーティングおよびソースルーティングに関する情報を表示または変更。
IPSECCMD ディレクトリ サービス、またはローカル レジストリかリモート レジストリで、IPSec (インターネット プロトコル セキュリティ) ポリシーを構成。
LPQ リモート LPDキューの状態を表示。
NETSTAT プロトコルの統計情報と現在の TCP/IP ネットワーク接続を表示。
■NETコマンド
NET ACCOUNTS ユーザーアカウントに対するログオンやパスワードの要件の表示/設定。
NET COMPUTER コンピュータアカウントをドメインへ登録または解除。
NET CONFIG サーバサービス(リソース公開サービス)やワークステーションサービス(リソース利用サービス)に関する情報を表示または設定。
NET CONTINUE サービスの再開。
NET FILE 使用されているファイルの一覧の表示および強制終了。(net shareで公開したリソースの、どのファイルが実際に他のコンピュータで利用されているかを表。)
NET GROUP ローカルコンピュータまたはドメインコントローラ上に登録されているグループアカウントの情報を表示/設定。
NET HELP 各コマンドの使い方を表示。
net hekpmsg Windowsのエラー番号に対する詳しいエラーメッセージを表示。
NET LOCALGROUP ローカルグループアカウントに関する情報を表示または設定。
NET NAME NetBIOS名を表示または追加。(新規に追加された名前はnet sendコマンドの宛先として利用可能。)
NET PAUSE サービスを一時停止。
NET PRINT

共有プリンタの情報や印刷キューの情報を表示および設定。
NET SEND 指定されたユーザーやコンピュータにメッセージを送信。
NET SESSION ローカルコンピュータに接続しているクライアントの一覧情報などを表示または強制終了。
NET SHARE 共有リソースの公開および公開停止。(ローカルのリソースを公開し、他のコンピュータでnet use可能にする。)
NET START サービスを表示または開始。
NET STATISTICS ネットワークプロトコルやリソースの公開および共有サービスに対する統計情報を表示。
NET STOP サービスを停止。
NET TIME 時間情報の表示や外部との同期。(コンピュータの時計をサーバーの時刻に合わせる。)
NET USE 共有リソースの使用および解除。(net shareされたネットワーク上のリソースをローカルで使用。)
NET USER ローカルコンピュータまたはドメインコントローラ上に登録されているユーザーアカウントの情報を表示および設定。
NET VIEW 共有リソースを提供しているコンピュータまたは特定のコンピュータが提供するリソースの一覧を表示。
NETSH NetShell ユーティリティを起動。
NSLOOKUP ネットワークサーバーの情報を取得。
PATHPING ping コマンドと tracert コマンドの機能に加え、独自の追加情報を提供するルートトレーシングツール。
PING リモートコンピュータへの接続を検査。
PROXYCFG WinHTTP プロキシ設定ツールを始動。
RCP RCPサービスを実行中のコンピューターに(から)ファイルをコピー。
REXEC REXEC サービスを実行中のリモートホストでコマンドを実行。
ROUTE ネットワークルーティングテーブルを処理。
RSH RSHサービスを実行中のリモートホストでコマンドを実行。
RUNAS 現在のログオンユーザーとは異なるアクセス権限で、特定のツールやプログラムを実行。
TCMSETUP テレフォニークライアントをセットアップ。
TFTP TFTPサービスを実行中のリモートコンピュータに(から)ファイルを転送。
TRACERT ネットワークの経路を調査。

2010年7月26日月曜日

Windows Serviceおよびセットアッププロジェクトの作成手順(2)

Windowsセットアッププロジェクトの作成手順:

◆8.サービスアプリに必要なインストーラを作成
①Serviceのデザイン画面で右クリックして、「インストーラの追加」を
クリック
※新しいクラスの ProjectInstaller、および ServiceProcessInstaller
と ServiceInstaller の 2 つのインストール コンポーネントが、
プロジェクトに追加される。また、ServiceInstallerに対象Serviceの名前
も確認できる
②サービスの起動方法を決定するには、[ServiceInstaller] コンポーネント
をクリックし、StartType プロパティに適切な値を設定
③サービスが実行されるセキュリティ コンテキストを決定するには、
[ServiceProcessInstaller] コンポーネントをクリックし、
適切なプロパティ値を設定
④カスタム処理の実行が必要なメソッドをオーバーライド

◆9.セットアッププロジェクを作成
①上記Windowsサービスのソリューションを右クリックし、「追加」→
「新しいプロジェクト」をクリック
②プロジェクト追加のDialog画面で「その他のプロジェクトの種類」→
「セットアップと配置」をクリック
③右画面で「セットアッププロジェクト」を選んで、下部のプロジェクト名
と場所を入力して、「OK」をクリック
④追加したセットアッププロジェクトを右クリックして、「追加」→
「プロジェクト出力」をクリック
⑤[ プロジェクト出力グループの追加 ] Dialog画面で対象プロジェクトを選んで、
「プライマリ出力」→ [OK]
⑥正しいインストールは、プライマリ出力だけ追加;
カスタム動作を追加するには、次の手順:
・セットアッププロジェクトを右クリックし、「表示」→「カスタム動作」
・カスタム動作 ] を右クリックし、 [カスタム動作の追加 を実行
・ アプリケーション フォルダー ] をダブルクリックし、対象サービスプロジェクトの
のプライマリ出力を選んで、 [OK] を実行
・既定では、セットアップ プロジェクトは、ビルド構成に含まれません。
下記方法でソリューションをビルドする
「ビルド」メニュー→「構成マネージャー」→「セットアッププロジェクト」のビルド
をチェックオン→ビルド(バッチビルド)
※setup.exeと.msi二種類のセットアップファイルが作成された。

Windows Serviceおよびセットアッププロジェクトの作成手順(1)

Windows Serviceプロジェクトの作成手順:

◆1.Visual Studioを開き、「ファイル」メニューをクリック
◆2.「新規作成」→「プロジェクト」をクリック
◆3.「新しいプロジェクト」Dialog画面で「プロジェクトの種類」
にある「Visual C#」→「Windowsをクリック
◆4.右側の画面で「Windowsサービス」を選んで、Dialog画面下部の
プロジェクト名、場所、ソリューション属性、ソリューション名
などの情報を入力

◆5.「OK」ボタンをクリック
※新規作成したプロジェクトに、ディフォルトは下記三つのclass
が作成された
①Program.cs:サービスアプリのメイン エントリポイント
②Service1.cs:サービスの開始と終了処理クラス
・Partial classであることが重要なポイントです
・上位クラスServiceBaseを継承している
③Service1.Designer.cs:クラスServices1.csの分岐classです
・コンパイラーにとって、Service1.csと同一クラスとして扱い
・上位クラスServiceBaseからの継承が要らない

◆6.ServiceNameプロパティを設定
①Serviceのデザイン画面に移動すると、プロパティの設定画面が
表示されて、ServiceNameを設定/変更
※ServiceName プロパティの値は、各インストーラ クラスに
記録されている名前と一致する必要がある
②AutoLog:
サービスがアクションを実行したときにアプリケーション
イベント ログに情報を入力する場合は True を設定
③CanHandlePowerEvent:
コンピュータの電源状態の変化をサービスに通知する場合は Trueを設定
④CanHandleSessionChangeEvent:
ターミナル サーバーのセッション変更イベントをサービスで
処理できる場合は true
⑤CanPauseAndContinue:
サービスが一時停止要求または再開要求を受け付ける場合は True を設定
⑥CanShutDown:
サービスがコンピュータのシャットダウン時に通知を受けて OnShutdown
プロシージャを呼び出す場合は、True を設定
⑦CanStop:
サービスが実行停止要求を受け付ける場合は True を設定

◆7.OnStart、OnStopのオーバーライドとコーディングうを行い、
サービスの動作をカスタマイズ

ASP.NETアプリのリモートデバッグ手順

ASP.NETアプリのリモートデバッグ手順:

◆リモート サーバーの ASP.NETアプリのデバッグ(方法1)
①デバッグするサーバーに Visual Studio .NET リモート デバッグ コンポーネントをインストールすることを確認
②既定では、ASP.NETアプリが、***.exeとして実行されます。このため、ASP.NET をデバッグするには、ASP.NET が実行されているコンピュータに対する管理者権限が必要
③リモート サーバーでデバッガへのアクセスが許可されている必要がある
つまりユーザーを Administrators グループまたは Debugger Users グループのいずれかに追加
④リモートサーバのデバッグ対象アプリ(*.exe)を起動
⑤Localマシンに実行されているVisual Studioの「デバッグ」→「プロセスにアタッチ」で画面を開く
⑥「修飾子」に「user」@「servername」の形で情報を入力
⑦プロセスにアタッチ画面で「選択可能なプロセス」からデバッグ対象プロセスを選んで、「アタッチ」ボタンをクリック
⑧リモートサーバでアプリを動作させて、Localマシン側のVSでデバッグ

◆リモート サーバーの ASP.NETアプリのデバッグ(方法2)
①リモートサーバにデバッグ対象アプリをコピー
※関連する PDB ファイル (mywin4m.pdb) および DLL、またはプログラムの実行に必要なその他のファイルも同じ場所にコピー
②LocalマシンのVSにデバッグ対象アプリのプロジェクトを右クリックし、「プロパティ」をクリック
③アプリのプロパティページで、「デバッグ」をクリック
④[開始動作] 設定で、[外部プログラムの開始] チェック ボックスをオンにし、横のテキストボックスにexeファイルの絶対パス(例:「c:\temp\mywin4m.exe」)入力。
⑤[開始オプション] の [作業ディレクトリ] ボックスに上記exeファイルのフォルダ絶対パス(例「c:\temp」)を入力。
⑥[リモート コンピュータの使用] チェック ボックスをオンにし、横のテキスト ボックスにリモートサーバのホスト名を入力。
⑦混合モード デバッグを行う場合は、[アンマネージ コード デバッグを有効にする] を選択
⑧リモート コンピュータで、リモート デバッグ モニタを起動

WEBサービスデバッグ:リモートデバッグの手順

WEBサービスリモートデバッグの手順:
1.デバッグを有効にする
・プロジェクトのプロパティ
①ソリューション エクスプローラでプロジェクト名を右クリックし、[プロパティ ページ] をクリックして、[プロパティ ページ] を開き。
② [開始オプション]タブをクリック。
③[デバッガ]の下にある [ASP.NET]チェックボックスがオンになっていることを確認。
・アプリのWeb.config
①タグに属性「debug」を作成
②属性「debug」にtrueを設定
※属性では大文字と小文字が区別されるため、"Debug"や"DEBUG"ではなく、"debug"を指定
注意:
デバッグを有効にすると、Performanceに影響があるので、DEBUG目的ではない場合、
無効にしてください。

2.リモート サーバーの XML Web サービスのデバッグ(方法1)
①デバッグするサーバーに Visual Studio .NET リモート デバッグ コンポーネントをインストールすることを確認
②既定では、Webサービスが、ASPNET プロセスとして実行されます。このため、ASP.NET をデバッグするには、ASP.NET が実行されているコンピュータに対する管理者権限が必要③リモート サーバーでデバッガへのアクセスが許可されている必要がある
つまりユーザーを Administrators グループまたは Debugger Users グループのいずれかに追加
④LocalマシンのIISフォルダ(C:\Inetpub\wwwroot)にVSよりビルドしたWebサービスのソースフォルダはリモートサーバのIISサーバの参照フォルダにコピー
※注:ビルドしたソースフォルダはDllファイルではなく、csファイルを含んでいる
ものです。
⑤Localマシンに実行されているVisual Studioの「デバッグ」→「プロセスにアタッチ」で画面を開く
⑥「修飾子」に「user」@「servername」の形で情報を入力
⑦プロセスにアタッチ画面で「選択可能なプロセス」からデバッグ対象プロセス
(w3wp.exe)を選んで、「アタッチ」ボタンをクリック
⑧リモートサーバでWebサービスを動作させて、Localマシン側のVSでデバッグ

3.リモート サーバーの XML Web サービスのデバッグ(方法2)
①デバッグするサーバーに Visual Studio .NET リモート デバッグ コンポーネントをインストールすることを確認
②既定では、Webサービスが、ASPNET プロセスとして実行されます。このため、ASP.NET をデバッグするには、ASP.NET が実行されているコンピュータに対する管理者権限が必要③リモート サーバーでデバッガへのアクセスが許可されている必要がある
つまりユーザーを Administrators グループまたは Debugger Users グループのいずれかに追加
④LocalマシンのIISフォルダ(C:\Inetpub\wwwroot)にVSよりビルドしたWebサービスのソースフォルダはリモートサーバのIISサーバの参照フォルダにコピー
※注:ビルドしたソースフォルダはDllファイルではなく、csファイルを含んでいる
ものです。
⑤上記「リモート サーバーの ASP.NETアプリのデバッグ」の手順にしたがって、ASP.NETアプリのデバッグを通じて、該当アプリが呼び出しているWebサービスのデバッグもできる