この記事は機械翻訳のミラー記事です。元の記事にジャンプするにはこちらをクリックしてください。

眺める: 20225|答える: 0

[出典] C# Process.Start() メソッドが詳細に説明されています

[リンクをコピー]
掲載地 2016/02/02 11:53:28 | | |
System.Diagnostics.Process.Start(); 何ができるのでしょうか? 主に以下の機能を持っています。
1. リンクURLを開く(ポップアップウィンドウ)
2. ファイルディレクトリを見つけて開く。
3. システム内の「コントロールパネル」などの特別なフォルダを開く
では、これらの機能をどのように実装しているのでしょうか? 応用について話す前に、Process.Star()の構成方法を見てみよう。

名前
説明
プロセス。スタート()このプロセスコンポーネントを開始(または再利用)しますスタート情報プロパティはプロセスリソースを指定し、そのコンポーネントに関連付けます。
Process.Start (ProcessStartInfo)プロセス起動情報(例えば、開始するプロセスのファイル名)を含むパラメータで指定されたプロセスリソースを開始し、そのリソースを新しいプロセスコンポーネントに関連付けます。
Process.Start(文字列)名称別文書または申請ファイルの名前プロセスリソースを開始し、そのリソースを新しいプロセスコンポーネントに関連付けること。
Process.Start(文字列、文字列)名称別アプリケーション名とコマンドライン引数の集合プロセスリソースを開始し、そのリソースを新しいプロセスコンポーネントに関連付けること。
Process.Start(文字列、文字列、SecureString、文字列)名称別アプリ名、ユーザー名、パスワード、ドメインプロセスリソースを開始し、そのリソースを新しいプロセスコンポーネントに関連付けること。
Process.Start(文字列、文字列、文字列、SecureString、文字列)名称別アプリケーション名とコマンドライン引数のセット、ユーザー名、パスワード、ドメインプロセスリソースを開始し、そのリソースを新しいプロセスコンポーネントに関連付けること。
(1) 公的ブール開始()
System.Diagnostics.Process process = new System.Diagnostics.Process();
プロセス。 StartInfo.FileName = "iexplore.exe";   Internet Explorerは置き換え可能です
プロセス。 StartInfo.Arguments = "http://www.baidu.com";
プロセス。 Start();

(2) パブリックスタティックプロセス開始(ProcessStartInfoスタート情報)
System.Diagnostics.ProcessStartInfo processStartInfo = new System.Diagnostics.ProcessStartInfo();
processStartInfo.FileName = "explorer.exe";  エクスプローラー
processStartInfo.Arguments = @"D:\";
System.Diagnostics.Process.Start(processStartInfo);

(3) publicstaticプロセスStart(文字列ファイル名)
System.Diagnostics.Process.Start(@"D:\Program Files\Tencent\QQ\Bin\QQ.exe");  ファイルコールを直接開いてください

(4) プロセス。開始(文字列)ファイル名、文字列引数)
System.Diagnostics.Process.Start("explorer.exe", "D:\\Readme.txt");   ファイルを直接開いてくださいReadme.txt

上記はprocess.start()でウェブサイトを開く例であり、次にprocesss.star()を使ってファイルの位置を特定する方法について話しましょう。
このローカライゼーション方法は、ショートカット ://explorer /selectの検索ターゲット「D:\Program Files\Tencent\QQ\Bin\QQ.exe」に似ています。
String path = @"D:\Program Files\Tencent\QQ\Bin\QQ.exe";
System.Diagnostics.Process.Start("explorer.exe", "/select," +path);  D:\Program Files\Tencent\QQ\Binファイルディレクトリを見つけて開き、QQ.exeを選択します
注:/selectの後にはコンマ(,)も付いています。

次に、rundll32.exeを呼び出してシステム固有のファイルを開く方法について話し、rundll32.exeの関数や関数を簡単に紹介します。
名前が示す通り、rundll32は「32ビットのDLLファイルを実行する」こと、すなわち実行DLLファイル内の内部関数であり、Windows 32ビット動的リンクライブラリをコマンドラインの形で呼び出すことができます。
同様に、rundll.exe「16ビットのdllファイルを実行」し、16ビットの動的リンクライブラリを呼び出します。 私たちは命令を実行することで一部の機能を実行rundll32.exe。
例えば:
System.Diagnostics.Process.Start("rundll32.exe","user.exe,restartwindows");      システム再起動コマンド
rundll32 コマンド百科事典

コマンドライン:rundll32.exe user.exe、restartwindows
機能:システム再起動

コマンドライン:rundll32.exe user.exe、exitwindows
機能:システムをシャットダウンする

コマンドライン:rundll32.exe shell32.dll、Control_RunDLL
機能:ディスプレイコントロールパネル

コマンドライン:rundll32.exe shell32.dll,Control_RunDLL access.cpl,,1
機能:「コントロールパネル - アクセシビリティオプション - キーボード」オプションウィンドウを表示します

コマンドライン:rundll32.exe shell32.dll、Control_RunDLL access.cpl、2
機能:「コントロールパネル - アクセシビリティオプション - 音声」オプションウィンドウを表示する

コマンドライン:rundll32.exe shell32.dll、Control_RunDLL access.cpl、3
機能:「コントロールパネル - アクセシビリティオプション - ディスプレイ」オプションウィンドウを表示する

コマンドライン:rundll32.exe shell32.dll、Control_RunDLL access.cpl、4
機能:「コントロールパネル - アクセシビリティオプション - マウス」オプションウィンドウを表示する

コマンドライン:rundll32.exe shell32.dll、Control_RunDLL access.cpl、5
機能:「コントロールパネル - アクセシビリティオプション - 従来型」オプションウィンドウを表示する

コマンドライン:rundll32.exe shell32.dll,Control_RunDLL sysdm.cpl @1
機能:コントロールパネルを起動 - 新しいハードウェアウィザードを追加。
コマンドライン:rundll32.exe shell32.dll,SHHelpShortcuts_RunDLL AddPrinter
機能:コントロールパネルを実行 - 新しいプリンターウィザードを追加。

コマンドライン:rundll32.exe shell32.dll、Control_RunDLL appwiz.cpl、1
機能:コントロールパネル - プログラムの追加/削除パネルを表示します。

コマンドライン:rundll32.exe shell32.dll、Control_RunDLL appwiz.cpl、1
機能:「コントロールパネル - プログラムの追加/削除 - インストール/アンインストール」パネルを表示します。

コマンドライン:rundll32.exe shell32.dll、Control_RunDLL appwiz.cpl、2
機能:「コントロールパネル - プログラムの追加/削除 - Windowsをインストールする」パネルを表示します。

コマンドライン:rundll32.exe shell32.dll,Control_RunDLL appwiz.cpl,,3
機能:「コントロールパネル - プログラムの追加/削除 - 起動ディスク」パネルを表示します。

コマンドライン:rundll32.exe syncui.dll、Briefcase_Create
機能:デスクトップに新しい「マイブリーフケース」を作成する。

コマンドライン:rundll32.exe diskcopy.dll、DiskCopyRunDll
機能:コピーフロッピーディスクウィンドウを表示する

コマンドライン:rundll32.exe apwiz.cpl、NewLinkHere %1
機能:「ショートカット作成」ダイアログボックスを表示し、生成されたショートカットの位置は%1パラメータによって決まります。

コマンドライン:rundll32.exe shell32.dll,Control_RunDLL timedate.cpl,0
機能:日付と時間のオプションウィンドウを表示します。

コマンドライン:rundll32.exe shell32.dll、Control_RunDLL timedate.cpl、1
機能:タイムゾーンオプションウィンドウを表示します。

コマンドライン:rundll32.exe rnaui.dll、RnaDial [ダイヤルアップ接続名]
機能:ダイヤルアップ接続用のダイヤルウィンドウを表示する。 すでに接続にダイヤルした場合、現在の接続状況を表示するウィンドウが表示されます。

コマンドライン:rundll32.exe rnaui.dll、RnaWizard
機能:新しいダイヤルアップ接続ウィザードのウィンドウを表示する。

コマンドライン:rundll32.exe shell32.dll,Control_RunDLL desk.cpl,0
機能:「プロパティ - 背景を表示する」オプションウィンドウを表示します。

コマンドライン:rundll32.exe shell32.dll、Control_RunDLL desk.cpl、1
機能:「表示プロパティ - 画面保護」オプションウィンドウを表示します。

コマンドライン:rundll32.exe shell32.dll,Control_RunDLL desk.cpl,,2
機能:「Display Properties - Appearance」オプションウィンドウを表示します。

コマンドライン:rundll32.exe shell32.dll、Control_RunDLL desk.cpl、3
機能:プロパティ表示 - プロパティオプションウィンドウを表示します。

コマンドライン:rundll32.exe shell32.dll、SHHelpShortcuts_RunDLL FontsFolder
機能:Windows Fontsフォルダを表示します。

コマンドライン:rundll32.exe shell32.dll,Control_RunDLL main.cpl @3
機能:Windowsフォントフォルダも表示します。

コマンドライン:rundll32.exe shell32.dll、SHFormatDrive
機能:フォーマットフロッピーディスクのダイアログボックスを表示します。

コマンドライン:rundll32.exe shell32.dll,Control_RunDLL joy.cpl,0
機能:「コントロールパネル - ゲームコントローラー - 一般」オプションウィンドウを表示します。

コマンドライン:rundll32.exe shell32.dll,Control_RunDLL joy.cpl,,1
機能:「コントロールパネル - ゲームコントローラー - 上級」オプションウィンドウを表示します。

コマンドライン:rundll32.exe mshtml.dll、PrintHTML(HTMLドキュメント)
機能:HTMLドキュメントの印刷。

コマンドライン:rundll32.exe shell32.dll、Control_RunDLL mlcfg32.cpl
機能:Microsoft ExchangeのGeneral Optionsウィンドウを表示します。

コマンドライン:rundll32.exe shell32.dll,Control_RunDLL main.cpl @0
機能:コントロールパネルのマウスオプションを表示する。

コマンドライン:rundll32.exe shell32.dll,Control_RunDLL main.cpl @1
機能:「コントロールパネル - キーボードプロパティ - 速度」オプションウィンドウを表示します。

コマンドライン:rundll32.exe shell32.dll,Control_RunDLL main.cpl @1,,1
機能:「コントロールパネル - キーボードプロパティ - 言語」オプションウィンドウを表示します。

コマンドライン:rundll32.exe shell32.dll,Control_RunDLL main.cpl @2
機能:Windowsプリンターフォルダを表示します。

コマンドライン:rundll32.exe shell32.dll,Control_RunDLL main.cpl @4
機能:「コントロールパネル - 入力方式プロパティ - 入力方式」オプションウィンドウを表示します。

コマンドライン:rundll32.exe shell32.dll、Control_RunDLL modem.cpl、追加
機能:新しいモデムの追加ウィザードを実行します。

コマンドライン:rundll32.exe shell32.dll,Control_RunDLL mmsys.cpl,0
機能:「コントロールパネル - マルチメディアプロパティ - オーディオ」プロパティページを表示します。

コマンドライン:rundll32.exe shell32.dll,Control_RunDLL mmsys.cpl,,1
機能:「コントロールパネル - マルチメディアプロパティ - ビデオ」プロパティページを表示します。

コマンドライン:rundll32.exe shell32.dll、Control_RunDLL mmsys.cpl、2
機能:「コントロールパネル - マルチメディアプロパティ - MIDI」プロパティページを表示します。

コマンドライン:rundll32.exe shell32.dll、Control_RunDLL mmsys.cpl、3
機能:「コントロールパネル - マルチメディアプロパティ - CD音楽」プロパティページを表示します。

コマンドライン:rundll32.exe shell32.dll、Control_RunDLL mmsys.cpl、4
機能:コントロールパネル - マルチメディアプロパティ - デバイスプロパティページを表示します。

コマンドライン:rundll32.exe shell32.dll,Control_RunDLL mmsys.cpl @1
機能:「コントロールパネル - 音声」オプションウィンドウを表示します。

コマンドライン:rundll32.exe shell32.dll、Control_RunDLL netcpl.cpl
機能:コントロールパネルのネットワークオプションウィンドウを表示する。

コマンドライン:rundll32.exe shell32.dll、Control_RunDLL odbccp32.cpl
機能:ODBC32のデータ管理オプションウィンドウを表示します。

コマンドライン:rundll32.exe shell32.dll,OpenAs_RunDLL {drive:/path/filename}
機能:指定されたファイル(drive:/path/filename)に対して「Open By」ダイアログボックスを表示します。

コマンドライン:rundll32.exe shell32.dll、Control_RunDLL password.cpl
機能:「コントロールパネル - パスワード」オプションウィンドウを表示します。

コマンドライン:rundll32.exe shell32.dll、Control_RunDLL powercfg.cpl
機能:「コントロールパネル - 電源管理プロパティ」オプションウィンドウを表示します。

コマンドライン:rundll32.exe shell32.dll,SHHelpShortcuts_RunDLL PrintersFolder
機能:Windowsプリンターフォルダを表示します。 (同じ rundll32.exe shell32.dll、Control_RunDLL main.cpl @2)

コマンドライン:rundll32.exe shell32.dll,Control_RunDLL intl.cpl,0
機能:「コントロールパネル - ローコールプロパティ - ローカル」オプションウィンドウを表示します。

コマンドライン:rundll32.exe shell32.dll、Control_RunDLL intl.cpl、1
機能:「コントロールパネル - ロケーションプロパティ - 番号」オプションウィンドウを表示します。

コマンドライン:rundll32.exe shell32.dll、Control_RunDLL intl.cpl、2
機能:「コントロールパネル - ロケーションプロパティ - 通貨」オプションウィンドウを表示します。

コマンドライン:rundll32.exe shell32.dll、Control_RunDLL intl.cpl、3
機能:「コントロールパネル - ロケーションプロパティ - 時間」オプションウィンドウを表示します。

コマンドライン:rundll32.exe shell32.dll、Control_RunDLL intl.cpl、4
機能:「コントロールパネル - ロケーションプロパティ - 日付」オプションウィンドウを表示します。

コマンドライン:rundll32.exe desk.cpl,InstallScreenSaver [スクリーンプロテクターファイル名]
機能:指定されたスクリーン保護ファイルをWindowsのスクリーンセーバーとして設定し、画面保護プロパティウィンドウを表示します。

コマンドライン:rundll32.exe shell32.dll,Control_RunDLL sysdm.cpl,0
機能:「コントロールパネル - システムプロパティ - 従来型」プロパティウィンドウを表示します。

コマンドライン:rundll32.exe shell32.dll,Control_RunDLL sysdm.cpl,,1
機能:「コントロールパネル - システムプロパティ - デバイスマネージャー」プロパティウィンドウを表示します。

コマンドライン:rundll32.exe shell32.dll、Control_RunDLL sysdm.cpl、2
機能:「コントロールパネル - システムプロパティ - ハードウェア設定ファイル」プロパティウィンドウを表示します。

コマンドライン:rundll32.exe shell32.dll、Control_RunDLL sysdm.cpl、3
機能:「コントロールパネル - システムプロパティ - パフォーマンス」プロパティウィンドウを表示します。

コマンドライン:rundll32.exe shell32.dll、Control_RunDLL telephon.cpl
機能:ダイヤルプロパティオプションウィンドウを表示する

コマンドライン:rundll32.exe shell32.dll、Control_RunDLL themes.cpl
機能:デスクトップテーマオプションパネルの表示

コマンドライン:rundll32.exe shell32.dll、Control_RunDLL firewall.cpl
機能:Windowsファイアウォールパネルの表示

コマンドライン:rundll32.exe shell32.dll、Control_RunDLL NetSetup.cpl、@0、WNSW
機能:「無線ネットワーク設定」パネルの表示
さらに多くのコマンドはこちらからダウンロードできます:http://download.csdn.net/detail/czw2010/4530206

System.Diagnostics.Process.Start("notepad.exe");        -- ノートパッドを開く
System.Diagnostics.Process.Start("calc.exe ");                -- 計算機を開けろ
System.Diagnostics.Process.Start("regedit.exe ");           -- レジストリを開く
System.Diagnostics.Process.Start("mspaint.exe ");        ―― 設計図を開けましょう
System.Diagnostics.Process.Start("write.exe ");              -- オープンワードパッド
System.Diagnostics.Process.Start("mplayer2.exe");        ――プレーヤーを開けて
System.Diagnostics.Process.Start("taskmgr.exe ");          --オープンタスクマネージャー
System.Diagnostics.Process.Start("eventvwr.exe ");          --イベントビューアーを開く
System.Diagnostics.Process.Start("winmsd.exe ");           --オープンシステム情報
System.Diagnostics.Process.Start("winver.exe ");              --Open Windowsのバージョン情報
System.Diagnostics.Process.Start("mailto: "+ address);    -- メールを送ってください

shutdown.exe:
パラメータ: -s シャットダウン -r 再起動 -f force -t 時間 -a シャットダウンキャンセル -l ログアウト -i 表示ユーザーインターフェース
System.Diagnostics.Process.Start("shutdown.exe","-r");              ――パソコンをシャットダウンして再起動してください
System.Diagnostics.Process.Start("shutdown.exe","-s -f");          ――コンピューターをシャットダウンしろ
System.Diagnostics.Process.Start("shutdown.exe","-s -f 30");     ――30秒でコンピューターをシャットダウンする
System.Diagnostics.Process.Start("shutdown.exe","-l");               --コンピューターからログアウト
System.Diagnostics.Process.Start("shutdown.exe","-a");              --元に戻してパソコンをシャットダウンして

スペシャルフォルダー会員の列挙:

メンバー名
説明
ApplicationDataディレクトリは、現在ローミング中のユーザーのためのアプリケーション固有のデータの公開リポジトリとして機能します。
ローミングユーザーはネットワーク上の複数のコンピュータで作業します。 ローミングユーザーのプロフィールはウェブサーバーに保存され、ログイン時にシステムに読み込まれます。
CommonApplicationDataディレクトリは、すべてのユーザーが使用するアプリケーション固有のデータの公開リポジトリとして機能します。
共通プログラムファイルかつてはアプリケーション間で共有されていたコンポーネントのディレクトリがありました。
クッキーインターネットクッキーの公開リポジトリとして使われるディレクトリです。
デスクトップ物理的なファイルシステムの場所ではなく、論理的なデスクトップです。
DesktopDirectoryデスクトップ上のファイルオブジェクトを物理的に格納するためのディレクトリです。
このディレクトリは、仮想フォルダであるデスクトップフォルダ自体と混同しないでください。
お気に入りユーザーのお気に入りのアイテムを公開するディレクトリです。
歴史インターネット履歴項目の公開リポジトリとして機能するディレクトリです。
インターネットキャッシュインターネット上の一時ファイルの公開リポジトリとして使われるディレクトリです。
LocalApplicationDataディレクトリは、現在非ローミングユーザーが使用しているアプリケーション固有のデータの公開リポジトリとして機能します。
マイコンピュータ私のコンピュータフォルダ。
注記
My Computerフォルダにはパスが定義されていないため、MyComputer定数は常に空の文字列("")を生成します。

マイドキュメント私のコンピュータフォルダ。
マイミュージック「マイミュージック」フォルダ。
マイピクチャーズ「マイ・ピクチャーズ」フォルダ。
個人情報ドキュメントの公開リポジトリとして使われるディレクトリです。
プログラムファイルプログラムファイルディレクトリ。
プログラムユーザープログラムグループのディレクトリを含みます。
最近の動向ユーザーの最近使用した文書を含む目次。
SendTo送信メニュー項目を含む目次。
スタートメニュースタートメニュー項目を含む目次。
スタートアップユーザーのスタートアップグループに対応するディレクトリです。
これらのプログラムは、ユーザーがログインしたり、Windows NT以降を起動したり、Windows 98を起動したりすると起動されます。
システム「System」ディレクトリ。
テンプレートドキュメントテンプレートの公開リポジトリとして機能するディレクトリです。
Environment.GetFolderPath(Environment.SpecialFolder.XXXXX); システム上の特別なフォルダへの特定のパスを簡単に取得し、Process.Start()メソッドでそのフォルダを開くことができます。
例えば:
System.Diagnostics.Process.Start(Environment.GetFolderPath(Environment.SpecialFolder.System));   システムフォルダ(System32フォルダ)を開きます


[System.Runtime.InteropServices.DllImportAttribute("user32.dll")]
        private static extern int FindWindow(文字列 ClassName, string WindowName);
[System.Runtime.InteropServices.DllImport("user32.dll")]
        private static extern int ShowWindow(int ハンドル、int cmdShow);
[System.Runtime.InteropServices.DllImport("winmm.dll", EntryPoint = "mciSendString", CharSet = System.Runtime.InteropServices.CharSet.Auto)]
        private static extern int mciSendString(string lpstrCommand, string lpstrReturnstring, int uReturnLength, int hwndCallback);
        私立コンセント int SW_HIDE = 0; APIパラメータは隠されたウィンドウを表します
        プライベートコンスタント int SW_SHOW = 5; APIパラメータは、ウィンドウが現在のサイズと位置で表示されていることを示します
        ShowWindow(FindWindow("Shell_TrayWnd", null)、SW_HIDE);         -- 非表示タスクバー
        ShowWindow(FindWindow("Shell_TrayWnd", null)、SW_SHOW);      -- タスクバーを表示
        mciSendString("set CDAudio door open", null, 127, 0);       -- 光学ドライブを起動して
        mciSendString("set CDAudio door closed", null, 127, 0);     --光学ドライブを切って





先の:DROPとREJECTの違い
次に:WordPressプログラムのSSL CA証明書の問題(パス?アクセス権?)
免責事項:
Code Farmer Networkが発行するすべてのソフトウェア、プログラミング資料、記事は学習および研究目的のみを目的としています。 上記の内容は商業的または違法な目的で使用されてはならず、そうでなければ利用者はすべての結果を負うことになります。 このサイトの情報はインターネットからのものであり、著作権紛争はこのサイトとは関係ありません。 ダウンロード後24時間以内に上記の内容を完全にパソコンから削除してください。 もしこのプログラムを気に入ったら、正規のソフトウェアを支持し、登録を購入し、より良い本物のサービスを受けてください。 もし侵害があれば、メールでご連絡ください。

Mail To:help@itsvse.com