ShellExecute的用法请问:能否使用相对路径

ShellExecute的用法请教:能否使用相对路径?
问题是这样的:
  在一个工程目录下CStranslation下,我和别人分别做了Client端和Server端,因为sever端有MFC界面所以想在给老师做演示的时候,显得好看一点,在server端点击按钮就能打开client.exe。

ShellExecute(this->m_hWnd,"open","d:\\project\\CStranslation\\Client\\debug\\myclient.exe","","", SW_SHOW );

但是老师要求统一在她的机器上做演示,绝对路径报销了,怎么使用相对路径呢,似乎很多人都在争论啊。

------解决方案--------------------
1.获取当前执行文件的路径
2.然后将myclient.exe放在相对应用程序的某个目录(比如在MyEXE目录下)
C/C++ code

        //获取配置文件文件路径
    char fName[FILENAME_MAX];
    GetModuleFileName(NULL, fName, FILENAME_MAX);
    *strrchr(fName, '\\') = '\0';
    strcat_s(fName, FILENAME_MAX, "\\Config\\Communicate.ini");

------解决方案--------------------
争论... 程序执行的目录叫做当前工作目录.

将程序和数据放在同一目录下, 切到程序所在目录, 执行程序, 那么程序的工作目录就是和数据在同一个目录, 程序中的代码使用相对路径即可操作到数据.
------解决方案--------------------
探讨

引用:

上面的代码例子 是我自己调用 相对应用程序 Config目录下的Communicate.ini文件


你说的那个是把exe拷贝出来是吧?不过演示是要交完整代码的,木有exe部分,是当场编译,运行的,你总不能当着老师的面把它拷贝出来吧?我们要交的整个CStranslation目录的