• ベストアンサー

exeファイルがあるディレクトリ

Win32 API関数で GetCurrentDirectory関数は知ってるのですが、これは、プログラムを呼び出した場所の場所がわかるのみです。 で、exeファイルがある場所を知りたいのですが、そのための関数ってありますか?(あるはず!?) ANSIでもAPIでもよいので。

質問者が選んだベストアンサー

  • ベストアンサー
  • taka_tetsu
  • ベストアンサー率65% (1020/1553)
回答No.1

GetModuleFileName

ggaogg
質問者

お礼

ありがとうございます。 助かりました。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • ファイルやディレクトリに

    空白を含む名前を付け それをドラッグして実行するプログラムgoo.exeを作ったのですが GetCommandLine()で ファイル”x y.txt”をドラッグしてgoo.exeを実行すると GetCommandLine()が ”goo.exe” x y.txt となるので xとy.txtの2つを受け取ってしまいます 98ならばxy~2.txtと名前が変更されるのでいいのですが95だと名前が変更にならない場合があり上記のようなったりします GetCommandLine()を使ってどのように空白付き名前のファイルを受け取ればいいのでしょうか? あるいはGetCommandLine()は上記のような致命的欠陥のため別のC言語用API関数が用意されているのでしょうか?

  • exeファイルが開かないのはなぜか??

    プログラム初心者です。 現在Win32APIを使ってプログラムを書いています。 そこで、リソースという機能を使ってカーソルの変更やメニューバーをプログラム実行ウインドウに付加してみたのですが、コンパイル、ビルドエラーが共に0であるのに、実行してもexeファイルが全く反応しなくなってしまいました。 しかし、リソース機能をつける以前のプログラムでは、実行画面がしっかりと出力されます。 原因を追究するために、ただいまソースファイルを比較検討しているのですがまだ問題が解決できていません。 コンパイル、ビルドエラーが0であるのに、今回のように実行ウインドウが出力されないということは、よくあるのでしょうか??また、もしあるのであれば、どんなことが考えられますか??アドバイスよろしくお願いいたします。

  • EXEファイル

    こんにちは WIN98です。 EXEファイルが開けなくなってしまったので、 フォルダオプションで関連付け ようと思ったのですが、どのプログラムかわからず 困っています。 もしくは別の方法なのでしょうか? どうか宜しくお願いします。

  • EXEファイルを実行できません。

    VB6でプログラムをつくりました(OS:WINDOWS98)が、EXEファイルを他のPC(OS:WINDOWS2000/WINDOWS95等)で実行させるのですが、うまくうごきません。API関数を使用しているのでこのためかと思いますが、どのように対処したらよいかわかりません。 "SLEEP" "RegCloseKey/RegOpenKeyEx" "RegQueryValueExstr" "Keybd_event" を使用しています。 他のPCにはソフトの干渉からVBをインストールすることはできません。 DLLをシステムに入れることなら問題ないのですが、どなたか教えていただけませんか?

  • exeファイルを開くことを出来なくしてしまいました

    OS: Windows XP exeファイル(exeファイルへのショートカットも)の起動時に、 必ず「ファイルを開くプログラムの選択」というのが出てきて、 プログラムの選択を強要されます。実はスタートの項目の一覧を整理していたときに誤って、ファイルを開くプログラムが違っているexeファイルを開いてしまい適当にプログラムを選択したのですが、全部そのファイルで実行されるようになってしまいました。その後、ほかのexeファイルを開いてみましたが、いちいちファイルを開くプログラムを選択しなくてはならなくなり、 exeファイルに連動しているexeファイルなどはできなくなりました。 以前の状態に戻そうと、システムの復元をmsconfigからではなく直接 システムの復元を起動してやりました。しかし結果的には失敗しているようで、もう、手も足も出ない状況です。どなたか助けてください。 下のページに書いてあることは何度も試しましたが出来ませんでした。(元に戻りませんでした) http://homepage2.nifty.com/winfaq/wxp/trouble.html#1251

  • exeファイルが開けません

    ほとんどのexeファイルが開けません。開こうとするとC\program files\idm.exeが見つかりませんという風にでてきます。IEとその他一部のファイルは開けるんですが、ほとんどのファイルが開けません。削除してしまったのかもと思い新しいプログラムをダウンロードしてみましたが開けないです。

  • exeファイルにドラッグすることで動作するプログラム

    現在、exeファイルのアイコンにデータファイルをドラッグすることで、プログラムを動かし、データファイルを読み込んで処理するプログラムをVisualC++2008ExpressEdtionで作成しています。 ここで質問が2つあります。 <質問1>  データファイル名に日本語(2バイトコード)が含まれている場合、CreateFile関数でエラーとなります。ファイル名に日本語を含む場合どのようにすればよいか教えてください。 <質問2>  現在作成しているプログラムでは、処理結果をファイルに出力しています。出力ファイルのフォルダをexeファイルのある場所にしたいのですが、プログラムコード上で相対パスで指定すると、上手く動きません(別フォルダに出力ファイルが作成されます)。ドラッグによってexeファイルを起動する場合、exeファイルのあるフォルダを知るにはどうしたらよいのでしょうか?

  • exeファイルはどのdllを参照すべきか、知っているのでしょうか。

    dllとは、プログラムが実行時に参照するものですよね。 よく使われる機能があらかじめ作られているものですよね。 私はC言語しか知らないので、C言語でプログラミングすることで話を進めさせてください。 (とは言っても、ごく初歩的なプログラムが組めるだけの素人です。) OSはWindowsということにします。 C言語は、関数の集まりでソースが書かれています。 dllも、中身に関数の実体が記述されている、そういうイメージでしょうか。 私がもっと勉強して、複雑なプログラムを組んだりすると、 「あ、これはdllに実体がある機能だから、いちいち実装を書かなくてもいいんだな」 と考えて、ソースファイル( ~.c )の中でその関数を使うだろうと思います。 私がよくわからないのはここからです。 dllにある関数をソースで使って、無事コンパイルして、さあリンクしてexeを作りましょう、 というときに、リンカ(リンクを行うプログラム)は、 「そんな関数、実体がないぞ」 って文句を言ってこないのでしょうか。 いや、リンカは、dllに実体がある関数だということを知っているはず。 でもそれって、いちいち 「この関数はどこどこにある ○○.dll というdllに書いてあります」 というふうに、リンカに教えてあげなくてはいけないのでしょうか。 (それってまさか、ソースに書くわけじゃないですよね? ) それから、 exeファイルっていうのは「この機能はdllに行わせる機能だ」ということを知っているのでしょうか。 dllに行わせる機能だということを知っているとしても、 どのディレクトリにある なんと言う名のdllに その機能が書かれていることまで知っているのでしょうか。 (でもそこまで知っていたら逆に、ディレクトリ構成の違うマシンでは実行できなくなってしまうし。) そういうような原理的なことを教えてください。

  • exeファイルが開けない

    間違ってなにかを削除してしまいexeファイルが開けなくなってしまいました。 システムを復元しようとしたのですがexeファイルが開けないためできませんでした。 あと、どのプログラムも開けなくなってしまいました 解決方法を知っている方がいましたら教えて下さい。おねがいします

  • exeファイルの存在する場所

    Windowsアプリを実行しているとき自分がどの実行ファイルから実行されたかを知るためにGetCurrentDirectoryを使ったができませんでした。 多重起動されている各インスタンスは自分を発生させている実行ファイルの格納場所を知ることはできるのでしょうか?

このQ&Aのポイント
  • EPSONプリンターPX-435Aを使ってしばらく印刷していなかったが、インクを交換した後でも印刷ができない問題に直面しています。
  • ヘッドクリーニングを何回か試したが、ヘッドのインク詰まりの可能性があります。
  • EPSONプリンターPX-435Aの印刷問題の解決方法を教えてください。
回答を見る