Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. General Programming
  3. C / C++ / MFC
  4. How to find the path of my current running application

How to find the path of my current running application

Scheduled Pinned Locked Moved C / C++ / MFC
tutorialjsonhelpquestion
16 Posts 7 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • J Jonathan Darka

    Try GetCurrentDirectory()


    Jonathan Wilkes Darka[Xanya.net]

    C Offline
    C Offline
    chandu004
    wrote on last edited by
    #4

    thanks for your response. GetCurrentDirectory() gave me some clue, to achieve my goal. but it still fetches me the previous selected file's directory. how ever with GetCurrentDirectory() , in the initdialog, i can find the folder of the application and preserve it and use it though user changes the current folder. but instead of that, if i get it directly, it would be better. did you get my point or do i have to explain better?

    J 1 Reply Last reply
    0
    • H Hamid Taebi

      Im not sure do you need to GetModuleFileName?

      C Offline
      C Offline
      chandu004
      wrote on last edited by
      #5

      vov, hamid, i tried it. it gave me the filename which iam running, like, d:\myapp\debug\myapp.exe. this will do for me. what all i want from this string is upto debug. may be i can do some parsing logic here to remove the myapp.exe. i would be pleased if you can suggest that for me. got my 5? thank you.

      R H R 3 Replies Last reply
      0
      • C chandu004

        thanks for your response. GetCurrentDirectory() gave me some clue, to achieve my goal. but it still fetches me the previous selected file's directory. how ever with GetCurrentDirectory() , in the initdialog, i can find the folder of the application and preserve it and use it though user changes the current folder. but instead of that, if i get it directly, it would be better. did you get my point or do i have to explain better?

        J Offline
        J Offline
        Jonathan Darka
        wrote on last edited by
        #6

        Here you go, this should do what you want.

        TCHAR szBuffer[_MAX_PATH] = {'\0'};
        DWORD dwLen = _MAX_PATH;

        GetModuleFileName(GetModuleHandle(NULL), szBuffer, dwLen);


        Jonathan Wilkes Darka[Xanya.net]

        C 1 Reply Last reply
        0
        • C chandu004

          vov, hamid, i tried it. it gave me the filename which iam running, like, d:\myapp\debug\myapp.exe. this will do for me. what all i want from this string is upto debug. may be i can do some parsing logic here to remove the myapp.exe. i would be pleased if you can suggest that for me. got my 5? thank you.

          R Offline
          R Offline
          Rajesh R Subramanian
          wrote on last edited by
          #7

          See PathRemoveFileSpec()

          Real men drive manual transmission.

          1 Reply Last reply
          0
          • C chandu004

            vov, hamid, i tried it. it gave me the filename which iam running, like, d:\myapp\debug\myapp.exe. this will do for me. what all i want from this string is upto debug. may be i can do some parsing logic here to remove the myapp.exe. i would be pleased if you can suggest that for me. got my 5? thank you.

            H Offline
            H Offline
            Hamid Taebi
            wrote on last edited by
            #8

            Yeah you can use of CString::Left for get full string of some strings of left. (one thing that it doesnt relative to your answer see my thread on the lonuge I saw a good site with nice wallpaper of milky way )

            C 1 Reply Last reply
            0
            • C chandu004

              vov, hamid, i tried it. it gave me the filename which iam running, like, d:\myapp\debug\myapp.exe. this will do for me. what all i want from this string is upto debug. may be i can do some parsing logic here to remove the myapp.exe. i would be pleased if you can suggest that for me. got my 5? thank you.

              R Offline
              R Offline
              Roger Stoltz
              wrote on last edited by
              #9

              _splitpath[^] in the CRT lib.


              "It's supposed to be hard, otherwise anybody could do it!" - selfquote
              "High speed never compensates for wrong direction!" - unknown

              C 1 Reply Last reply
              0
              • H Hamid Taebi

                Yeah you can use of CString::Left for get full string of some strings of left. (one thing that it doesnt relative to your answer see my thread on the lonuge I saw a good site with nice wallpaper of milky way )

                C Offline
                C Offline
                chandu004
                wrote on last edited by
                #10

                nice of ur wallpapers. why don't you attempt for my algorithm in corresponding forum.

                H 1 Reply Last reply
                0
                • C chandu004

                  nice of ur wallpapers. why don't you attempt for my algorithm in corresponding forum.

                  H Offline
                  H Offline
                  Hamid Taebi
                  wrote on last edited by
                  #11

                  Im sorry but I dont understand what you said?

                  C 1 Reply Last reply
                  0
                  • J Jonathan Darka

                    Here you go, this should do what you want.

                    TCHAR szBuffer[_MAX_PATH] = {'\0'};
                    DWORD dwLen = _MAX_PATH;

                    GetModuleFileName(GetModuleHandle(NULL), szBuffer, dwLen);


                    Jonathan Wilkes Darka[Xanya.net]

                    C Offline
                    C Offline
                    chandu004
                    wrote on last edited by
                    #12

                    no boss i'm still getting the recent selected file's folder by the user. thanks for your concern.

                    T 1 Reply Last reply
                    0
                    • H Hamid Taebi

                      Im sorry but I dont understand what you said?

                      C Offline
                      C Offline
                      chandu004
                      wrote on last edited by
                      #13

                      i mean please go to algorithms forum and try to attempt my post. thanku

                      1 Reply Last reply
                      0
                      • R Roger Stoltz

                        _splitpath[^] in the CRT lib.


                        "It's supposed to be hard, otherwise anybody could do it!" - selfquote
                        "High speed never compensates for wrong direction!" - unknown

                        C Offline
                        C Offline
                        chandu004
                        wrote on last edited by
                        #14

                        thanks for your reply roger. i shall definitely look into it if all my other choices disappoint me.

                        1 Reply Last reply
                        0
                        • C chandu004

                          no boss i'm still getting the recent selected file's folder by the user. thanks for your concern.

                          T Offline
                          T Offline
                          ThatsAlok
                          wrote on last edited by
                          #15

                          is you application is executable or dll!

                          "Opinions are neither right nor wrong. I cannot change your opinion. I can, however, change what influences your opinion." - David Crow
                          Never mind - my own stupidity is the source of every "problem" - Mixture

                          cheers, Alok Gupta VC Forum Q&A :- I/IV Support CRY- Child Relief and You

                          1 Reply Last reply
                          0
                          • C chandu004

                            hai friends, my problem is like this. in my program, (say for example) i will allow the user to select a file, any where in the computer. now after file selection, i have to create one file in the folder, where my program is available. i donot give any path while creation. i will simply use open(file1,write). but this file is created, in the folder, where the selected file is available. is there any api, which can fetch me the path of the current working folder, such that, i can save my folder there? thanks for your views.

                            N Offline
                            N Offline
                            Nelek
                            wrote on last edited by
                            #16

                            Try with...

                            CString m_szNewFileName = "";
                            char FileName[MAX_PATH];
                            GetModuleFileName(NULL, FileName, MAX_PATH);
                            m_szNewFileName = FileName;
                            m_szNewFileName = m_szNewFileName.Left(m_szNewFileName.ReverseFind('\\'));
                            m_szNewFileName += "DesiredNewName.ext"

                            CFile f (m_szNewFileName, CFile::modeCreate | CFile::modeWrite);

                            it worked good for me. This would create the new file in the forlder where the App.exe is. And afterwards you can delete the file with:

                            if (f.Open (m_szNewFileName, CFile::modeRead))
                            { f.Close ();
                            f.Remove (m_szNewFileName);
                            }

                            EDIT: Nice, my post is the newest one, but has the answers of the post just above (older than mine):doh: :P -- modified at 5:21 Monday 29th October, 2007 -- modified at 5:22 Monday 29th October, 2007

                            Greetings. -------- M.D.V. If something has a solution... Why do we have to worry about?. If it has no solution... For what reason do we have to worry about? Help me to understand what I'm saying, and I'll explain it better to you ;)

                            1 Reply Last reply
                            0
                            Reply
                            • Reply as topic
                            Log in to reply
                            • Oldest to Newest
                            • Newest to Oldest
                            • Most Votes


                            • Login

                            • Don't have an account? Register

                            • Login or register to search.
                            • First post
                              Last post
                            0
                            • Categories
                            • Recent
                            • Tags
                            • Popular
                            • World
                            • Users
                            • Groups