API 명령중에 DeleteFile 기능 사용과 관련해서 질문드립니다.
글쓴이: quarterhorse / 작성시간: 일, 2012/11/11 - 5:24오후
API를 독학으로 공부하고 있는 중입니다. 정말 초짜중의 초짜라 매우 쉬운데에서 부터 막히느라 막막한데요 ㅠ
API중에서 DeleteFile를 써보려고 하는데, 형식이 맞지 않는다고 오류를 뿜습니다.
만약 c:\test file\test file one.txt, c:\ test file\file\test file two.txt 두 파일을 지우려고 한다면,
어떻게 지정해야 제대로 동작하는지 궁금합니다.
일단 제가 연습해 보던 코드는 부분만 따와서 적어봅니다....
// *** BOOL DeleteFile(LPCTSTR lpFileName);형의 구조 사용 테스트 BOOL DeleteFile_test(LPCTSTR lpFileName); // LRESULT CALLBACK WndProc(HWND hWnd,UINT iMessage,WPARAM wParam,LPARAM lParam) { switch (iMessage) { ... 생략 } return(DefWindowProc(hWnd,iMessage,wParam,lParam)); } BOOL DeleteFile_test(LPCTSTR lpFileName) { char prog[]="c:\\test\\test.exe"; DeleteFile(prog); return 0; }
File attachments:
첨부 | 파일 크기 |
---|---|
![]() | 6.69 KB |
Forums:
char 배열대신 TCHAR 배열로 하시거나
아니면 TEXT매크로를 이용하면 형식오류는 해결될 것으로 보입니다.
BOOL DeleteFile_test(LPCTSTR
근데 인자는 왜받나요?
그리고 BOOL 형인데 왜 0을 리턴하나요?
이런것들이 도움될거 같습니다.
1. 문자열 형변환이 궁금하다면. 네이버에서 이렇게 검색해 보세요
_T 매크로
C string _T
WideCharToMultiByte
http://kin.naver.com/qna/detail.nhn?d1id=1&dirId=1040101&docId=71509776&qb=QyBzdHJpbmcgX1Q=&enc=utf8§ion=kin&rank=1&search_sort=0&spq=1
http://blog.naver.com/dkdaf?Redirect=Log&logNo=90156336556
http://rainbrolly.tistory.com/263
http://blog.naver.com/alonglog?Redirect=Log&logNo=130044427979
http://blog.naver.com/hello20?Redirect=Log&logNo=150017454132
http://blog.naver.com/acwboy?Redirect=Log&logNo=50143787793
http://cafe.naver.com/gisdev/767?social=1
http://binyjini.tistory.com/89
http://blog.naver.com/ysoftman?Redirect=Log&logNo=20065646151
//
C 관련 서적을 보시는게 좋습니다.
2. DeleteFile 는 msdn을 참고해보세요.
http://msdn.microsoft.com/ko-kr/library/windows/desktop/aa363915(v=vs.85).aspx
//0 이 아닐 경우. 성공이고. 리턴값이 0 이면. GetLastError로 확인해보라고 합니다.
fSuccess = DeleteFile(TEXT("datafile.txt"));
if (!fSuccess)
{
// Handle the error.
printf ("DeleteFile failed (%d)\n", GetLastError());
return (6);
}
3. 기능 구현하기
BOOL DeleteFile_test(LPCTSTR lpFileName)
{
int fSuccess = DeleteFile(lpFileName);
if (!fSuccess)
{
// Handle the error.
//printf ("DeleteFile failed (%d)\n", GetLastError());
return 0;
}
return 0;
}
//기능 사용하기
DeleteFile_test("datafile.txt");
----------------------------------------------------------------------------
젊음'은 모든것을 가능하게 만든다.
매일 1억명이 사용하는 프로그램을 함께 만들어보고 싶습니다.
정규 근로 시간을 지키는. 야근 없는 회사와 거래합니다.
각 분야별. 좋은 책'이나 사이트' 블로그' 링크 소개 받습니다. shintx@naver.com
위에 모든 분들 답변 정말로 감사드립니다.
제가 아직 많이 갈길이 멀다는 생각이 세삼 다시 생각되네요 ㅠㅠ
도움주신분들 정말 감사드리며 좋은 월요일 되셨으면합니다!
댓글 달기