contact 머드클럽 문의하기 카카오톡
즐겨찾기 추가plus 머드클럽이 새롭게 오픈하였습니다!
sub image
[LPMud]마군님 주라소스 오류문제
member photo 한웅 1 906 0 2014-03-09 14:46:28
0
1Comments
member photo
추리소설 2014.03.11(화) 오후 04:44:08
문제1의 원인은 리눅스와 윈도우의 개행문자 차이 때문에 발생하는 거구요.
데이터 저장/로드시 위 문제점을 해결해 주어야 정상동작 할 수 있습니다.
제가 사용한 방법을 알려드리자면..

lib/adm/include/config.h 파일에 아래 설정을 추가하시고
(OS에 맞게 그때 그때 수정하여 사용합니다)
#define RUN_OS_WIN 1
//#undef RUN_OS_WIN // Window일 경우 1, 리눅스일 경우 #undef

lib/adm/master/simul_efun.c 파일을 열어서.. 수정/추가 합니다.
//-----------------------------------------------------------------------------
// 함수 설명 : 윈도우, 리눅스 개행문자 차이를 해결하기 위해... 윈도우 : \r\n 리눅스 : \n
//-----------------------------------------------------------------------------
int save_file(string strPath, string strConTents)
{
#ifdef RUN_OS_WIN
if(efun::save_file(strPath, strConTents))
{
string strDesc;

if(file_size(strPath) > 2)
{
strDesc = replace_string(read_bytes(strPath), "\r\n" , "
");
rm(strPath);
write_bytes(strPath, 0, strDesc);
}
return 1;
}
else
{
return 0;
}
#endif
return efun::save_file(strPath, strConTents);
}

//-----------------------------------------------------------------------------
// 함수 설명 : 윈도우, 리눅스 개행문자 차이를 해결하기 위해... 윈도우 : \r\n 리눅스 : \n
//-----------------------------------------------------------------------------
void convCRLF(string strFilePath)
{
#ifdef RUN_OS_WIN
string strDesc;
//-----------------------------------------------------------------------------
// 윈도우일 경우 \r\n을 리눅스의 \n으로 바꾸어서 다시 저장한다.
//-----------------------------------------------------------------------------
if(strFilePath[<2..] == ".o")
strFilePath = strFilePath[0..<3];

strDesc = replace_string(read_bytes(strFilePath + __SAVE_EXTENSION__), "\r\n" , "
");
rm(strFilePath + __SAVE_EXTENSION__);
write_bytes(strFilePath + __SAVE_EXTENSION__, 0, strDesc);
#endif
return;
}


convCRLF함수의 사용법은.. save_object함수가 사용되는 부분의 밑에다가
인자를 동일하게 주어서 호출해 주시면 되겠네요.

예)
save_object(SAVE_FILE);
convCRLF(SAVE_FILE);


문제1이 해결되었는데도 문제2가 발생한다면..
명령어 자체 잘못된 코딩에 문제일 가능성이 높겠네요.
메모리에 룸이 로드가 안된상태인데 해당 룸으로 유저객체를 Move시킬려고
시도해도 저런 에러메세지가 나올거구요.
기타 여러가지 이유가 있으니 에러메세지와 발생위치를 유심히 보시고 소스를 살펴보시면
해결가능하지 않을까 생각합니다. 문제2는 별 도움이 못되겠네요.
코멘트를 삭제할 비밀번호를 입력하세요.
비밀번호:
정회원 이상만 코멘트 쓰기가 가능합니다.
총 게시물 47개 / 검색된 게시물: 47개
글번호   제목 작성자 조회수 싫어요 작성일
47 [Circle] tbaMUD(CircleMUD) 2019 입출력 한글화 [11+4] 새노 698 0 0 2019-12-06
46 [Etc] 삭제된 게시물입니다. 암로 1032 0 0 2018-05-12
45 [LPMud] 마군님 주라소스 오류문제 [1] 한웅 907 0 0 2014-03-09
44 [LPMud] 오로라 캠프 아시는 분~ [3] 홍길동(3) 941 0 0 2011-04-26
43 [Etc] Narai New 소스를 구합니다 윤호재 664 0 0 2010-11-07
42 [LPMud] HanLP 윈도우용 driver 실행파일 [1] 우창희 974 0 0 2010-05-20
41 [Mordor] Mordor 6.66a-7 패치 아모레 883 0 0 2009-12-18
40 [Circle] CircleMud 3.6 (한글) [6] 신군 1818 0 0 2009-10-25
39 [Circle] CircleMud 3.5 우울한나 1013 0 0 2008-11-09
38 [Mordor] [버전업][머드를만들자] Ver. 0.3.0 [1] 한민영 2215 0 0 2006-08-07
37 [Mordor] 제3의눈 소스 [2] 엔젤 3168 0 0 2004-12-22
36 [Circle] cwg-suntzu-2004-05-31 &lt;한글&gt; [8] 박찬영 1819 0 0 2004-09-30
35 [Samug] SMAUG 1.4A FOR WINDOWS [3] 소로 1375 0 0 2004-09-14
34 [Circle] CircleMud 3.1 - Suntzu 배포버전 수정판 by Mirr [5] 미르 1601 0 0 2004-08-30
33 [LPMud] 쥬라기공원3 잃어버린세계 [13] 이 강 3781 0 0 2004-08-10
32 [Mordor] mordor 6.66 [1] 2Soo 1145 0 0 2004-08-02
31 [Mordor] 무한대전 1.3 머드사랑(1) 2559 0 0 2004-07-26
30 [Mordor] 무한 1.3 양주님이 수정하신것. GrayRese 1519 0 0 2004-07-25
29 [Mordor] 무한대전 Ver 1.2 입니다. 조자건 1048 0 0 2004-07-19
28 [Etc] Python 머드 소스입니다. [1] Raven 1589 0 0 2004-06-18
쪽지를 전송하고 있습니다. 잠시 기다려주세요.
쪽지보내기
받는이(ID/닉네임)
내용
쪽지가 도착하였습니다.
쪽지 내용을 읽어오고 있습니다. 잠시 기다려주세요.
--