• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:C#とwindows APIとの連動方法)

C#とWindows APIを活用したファイル名変更ソフトの作り方

FoolWordの回答

  • ベストアンサー
  • FoolWord
  • ベストアンサー率73% (14/19)
回答No.2

簡単に。。。 1.レジストリの登録の際に「プログラム名 "%1"」でコマンドパラメータを指定できるようにする。 2.自作ソフト内で起動コマンドラインを取得して名称変更するプログラムを作成。 起動時のコマンドラインの取得方法は、 String[] CmdLines; CmdLines = System.Environment.GetCommandLineArgs(); で取得できます。 CmdLines[0]:プログラム名称 CmdLines[1]:コマンドラインパラメータ1 CmdLines[n]:コマンドラインパラメータn

kyotokyo
質問者

補足

ご回答ありがとうございます。 一つ疑問なのですが コマンドライン引数はプログラム起動時に、プログラムへ値を渡す方法ですよね? 例えばexplorer.exeを起動する場合は、「explorer.exe C:\text.txt」のように記述すると思うのですが 肝心のC:\text.txtの部分はどうやって調べればよいのでしょうか? 私の作りたいソフトの処理を簡単に書くと以下のようになります。  (1)windowsデスクトップ上で、ファイルを選択する  (2)その状態で、右クリックメニューを表示して自作ソフトを起動する。  (3)自作ソフトが選択されているファイル名を変更する。 上記のような処理を行いたいのですが、自作ソフトに値を渡す方法はコマンドライン引数を使うとして その引数の取得方法(この場合は、選択中のファイル名)が調べ方が分かりません。 ぜひその部分をご教授願えたらと思います。

関連するQ&A

  • 「プログラムから開く」で勝手にテキストになる

    レジストリ関係の詳しい方、教えてください。 ファイルを右クリックして「プログラムから開く(H)...」を 選択したらどんなファイルでもノートパッドが開いてしまいます。 試しに適当な拡張子(.hya など通常にないもの)に変更して ファイルを開こうとすると、普通であれば対象アプリが無いため プログラムの選択画面が出ますが、選択画面が出ずにテキストとして 開いてしまいます。 おそらく、雑誌片手にレジストリをイジっていたときにでも知らずに 修正しちゃったかもしれないのです。 レジストリエディタで修正すれば良いと思うのですが、何処を どのように修正すれば良いのかまでは分からないので直せません。 どうか詳しい方、修正のやり方を教えてください。  よろしく御願いします。

  • ファイルパスの二回目の読み込み(API・C言語)

    ウィンドウから右クリックでファイルダイアログを開き、 ファイルパスを取得、ある操作をさせて ウィンドウ上に表示させると言うプログラムを、 C言語、コンパイラはBorland C++、Windows APIにて 作成しております。 そこで、一回目、右クリックしてパスを読み込み、 表示させる事には成功したのですが、 二回目、同じようにウィンドウ上で右クリックして、 パスを読み込むと、おかしな表示となってしまいます。 二回目も一回目と同じような表示にさせるにはどうしたら いいでしょうか。 アドバイス宜しくお願い致します。 ソースはこちらです。 http://onegaisimasune.web.fc2.com/main3.txt

  • Google API license keyの取得方法

    某アクセス解析アプリケーションのキーワード取得に必要で、Google APIのlicense key を取得したいのですが、いくら調べてもどこから取得すればいよいのかわかりません。 あるサイトでは、左のメニューの create account をクリックすればよいと書いてありましたが、そのメニューが見つかりません。 ライセンスの取得をなんらかの事情で中止しているんでしょうか? どなたか事情をご存知の方、もしくは取得方法をご存知の方、教えてください。 よろしくお願いします。

  • レジストリエディタ等のショートカット起動

    レジストリエディタなどなんですが、いちいち、スタートメニューよりファイル名を指定して起動をクリックして、ファイル名を打ち込んで…というのは手間がかかります。(以前に起動したものは選択できますが) 普通のプログラムのショートカットを作るのはそのファイルを右クリックしてできますが、レジストリエディタなどはどうするのでしょうか。 regeditで検索しても出てこなかったし…どこかに入っているのか? そういえば、余計なところは検索しないように設定したから…

  • エクスプローラーの右クリックメニュー項目の順番を変えるソフトがあれば教えて欲しい。

    エクスプローラーでファイルを右クリックしたときに出るメニューの順番を変更したいのですが、そういったソフトはありますか? 右クリックメニューの項目を追加・削除するソフトは見つかるのですが、順番を変更させるソフトは見つかりません。 あったら教えていただきたいのですが。 なければ、レジストリを直接いじることになると思うのですがそこまで詳しくないのでそれは避けたいのですが・・・。

  • APIについて

    アプリケーションソフトがが環境変数の値を取得する場合、環境変数を取得するAPI関数が「あそこのレジストリに要求された変数があるから取りに行いこう」という感じでとりに行って、アプリケーションに返してるんでしょうか?

  • APIイベントを発生させる方法を教えてください。

    自作アプリケーション(WindowsのVB)に、 メールファイルをOutLookソフトからドラッグドロップして、ドラッグドロップのAPIイベントを発生させたいのですが、できずに困っています。 (ちなみに、 OutLookソフトからメールファイルをデスクトップ上へドラッグドロップできます。その、デスクトップ上のメールファイルを、自作アプリケーションへドラッグドロップすると、ドラッグドロップのAPIイベントが発生します。) FormのLoadイベントで、2個のAPI関数を実行しています。 (1)サブクラス化開始    Call SubClass(フォーム名.hwnd) (2)フォームがドロップファイルを受け入れるよう設定    Call DragAcceptFiles(フォーム名.hwnd, True) どなたかアドバイスをお願いします。

  • 不要右クリックメニューを削除する方法はありませんか

    Win8ノートパソコンです パソコンのごみ削除をしています 一時使用で総合メンテナンスソフトのAdvanced SystemCare 7 を使ってみました。 ソフトを削除したのですが、ファイル、フォルダー等の右クリックメニューに,, Shred File,,Analyze disk,他のメニューが残っています Cデスクの所は、 Repair Disk,,Clesm Disk他のメニューが残っています、 これらの不要右クリックメニューを削除する方法はありませんか。 右クリックメニューはレジストリーに情報が有ることは知っています。 レジストリー内をメニュー名で検索しても見つかりません、 削除する方法はありませんか

  • GoogleやYahooのAPIについて

    GoogleやYahooで公開されているAPIを用いて、必要なデータを取得したいと考えております。 このとき、APIを利用するために作成したプログラムは必ずホームページなどに公開されていないと駄目なのでしょうか? APIを利用するプログラムは個人のパソコンだけで作成して公開せず、そこからデータを取得したいと考えております。 よろしくお願いいたします。

  • google翻訳 apiで pdfを翻訳する方法

    google翻訳 apiで pdfを翻訳する方法 いつもお世話になります。 google翻訳 api を使ってpdfを翻訳できるということを知り試してみました。 pdfファイルのurlを http://translate.google.co.jp/#ja|en| へ、ドラッグするとできました。 ここで、質問です。 上記の機能を自作のWEBページに実装することはできないでしょうか。 つまり、あるボタンをクリックすると、翻訳されたpdfのページが表示される。 または、自作のWEBページでボタンをクリックすると、 pdfのurlをgoogoleの上記翻訳ページへ送信して、自動的に翻訳されたpdfのページが開かれる。 と、いう方法でも構いません。 よろしくお願いいたします。