|
Jun 님이 쓰신 글 :
: 현재 실행화일이 실행중인 디렉토리와 패스를 가져오는 소스인데요..
:
: int fnsplit(const char *path, char *drive, char *dir, char *file, char *ext);
: char *s;
: char drive[MAXDRIVE];
: char dir[MAXDIR];
: char file[MAXFILE];
: char ext[MAXEXT];
: int flags;
:
: AnsiString re_drive;
: AnsiString re_dir;
: flags=fnsplit(ParamStr(0).c_str(), drive, dir, file, ext);
:
: if(flags & DRIVE)
: {
: re_drive=drive;
: }
: if(flags & DIRECTORY)
: {
: re_dir=dir;
: }
:
: AnsiString current_before = re_drive + re_dir;
: AnsiString test_file = re_drive + re_dir + "test.chm";
:
: 메모리 해제해야 할 변수를 잘 못찾겠어요..
: 그리고 저 위에 int fnsplit라는 것은 필요한 코드인가요?
: 예전에 이 곳에서 보고 적용한 건데 분석이 잘 안되네요.....
: 답변 부탁드릴께요...
:
안녕하십니까?
한꼬맹이 입니다.
우선 위에 코드에서 메모리 해제해야 할 변수는 없습니다.
/*
int fnsplit(const char *path, char *drive, char *dir, char *file, char *ext);
char *s;
*/
그렇지만 위의 두줄의 코드는 전혀 필요없습니다... 삭제바람
한마디 덧 히자면 re_drive, re_dir 에는 완전경료명에서 파싱된 드라이브명과 디렉토리명이
포함되어 있네요..
그럼 참고하세요..
|