'hack/trouble_shooting'에 해당되는 글 6건
- 2011.08.27 fossil 컴파일 에러 수정
- 2010.04.24 fatal error CVT1100: duplicate resource. type:MANIFEST, name:1, language:0x0409 에러가 났을때. 1
- 2010.03.14 Windows 7의 Jump list(또는 Pin list)가 안지워질때 1
- 2010.03.02 Vista 이상 운영체제에서 SetThreadLocale이 먹히지 않는 현상
- 2010.01.15 Vista 이후 64bit OS 에서 ODBC 데이터 원본 관리자 사용시 주의할 점.
- 2008.12.25 Eclipse에서 JVM terminated. Exit code=-1 메세지가 나올때
SQLite 개발자가 직접 만든 거 같은데 뭔가 특이하긴 하다. 최근엔 UnQL이란 NoSQL계열 DBMS 도 만드는거 같은데 backend 를 죄다 직접 만들 셈인가 보다.
어쨌거나 Fossil을 쓰려면 미리 만들어진 binary를 쓰거나 직접 컴파일을 해야하는데 직접 컴파일을 할때 2011-07-13 일자 1.18 버젼을 받아서 configure 명령을 치면 아래와 같은 에러가 난다. 이는 auto.def 파일의 문법이 잘못되서 그렇다. 다음과 같은 patch 파일을 만들어 patch한다. 아래를 auto-def-missing-bracket.patch 로 저장한다. 또는 간단한 문법 에러므로 직접 101번째 줄에 ] 가 빠진걸 넣어줘도 된다. 다음으로 make install을 하면 옮겨야할 곳의 디렉토리를 생성 안하고 mv 명령을 때리기 때문에 에러가 난다. --prefix 로 /usr/local/stow/fossil 이었을 경우 /usr/local/stow로 이동하여 fossil 과 fossil/bin 을 생성해준다.
저같은 경우는 IE의 점프리스트가 문제가 됬는데 네트워크 드라이브 상에 있는 특정 html 파일을 연후 이것을 '이 목록에 고정' 기능을 이용하여 고정 시킵니다. 그리고 해당 파일을 지워버리면 그 이후부터 핀 리스트에 있는 해당 항목은 삭제가 되지 않는 현상이 발생합니다.
어쨌거나 이리저리 삽질하다가 다음과 같은 해결책을 알아냈습니다.
시작 -> 실행 후 아래 커맨드를 입력후 확인을 누릅니다.
%AppData%\Microsoft\Windows\Recent\AutomaticDestinations
그러면 탐색기에 1b4dd67f29cb1962.automaticDestinations-ms, 4975d6798a8bdf66.automaticDestinations-ms 같은 알수 없는 이름들의 파일이 보일겁니다.
이것들이 바로 Jumplist 정보를 담고 있는 파일들입니다.
하지만 괴상한 이름의 파일들만으로는 어떤 파일이 원하는 Jumplist 인지 알기가 힘든데요. 원하는 항목을 쉽게 알수있는 꽁수가 있습니다.
원하는 항목에 핀 리스트에 아무 항목이나 고정 시키면 저 파일중 하나가 수정된 날짜가 변경되므로 이후 최근 날짜 파일을 지우면 해당 항목이 초기화 된 것을 볼 수 있습니다.
// Vista 이상부터는 SetThreadLocale로 사용자가 직접 언어를 선택하는걸 허용하지 않는다.
// 이 함수는 XP 는 SetThreadLocale을 쓰고 Vista 이상은 SetThreadUILanguage를 부른다.
// 하지만 되도록 이걸 쓰지말고 dll로 리소스를 분리하는게 좋을듯...
bool SetThreadLocaleEx(LCID lcLocale)
{
OSVERSIONINFO osVersion;
osVersion.dwOSVersionInfoSize = sizeof(OSVERSIONINFO);
if (::GetVersionEx(&osVersion) == FALSE)
{
return false;
}
if (osVersion.dwMajorVersion == 6)
{ // >= Windows Vista
HINSTANCE hKernelDll = ::LoadLibrary(_T("kernel32.dll"));
if (hKernelDll == NULL)
{
return false;
}
unsigned (WINAPI* SetThreadUILanguage)(LANGID) = (unsigned (WINAPI* )(LANGID))::GetProcAddress(hKernelDll, "SetThreadUILanguage");
if (SetThreadUILanguage == NULL)
{
return false;
}
LANGID resLangID = SetThreadUILanguage(static_cast<LANGID>(lcLocale));
return (resLangID == LOWORD(lcLocale));
}
else // <= Windows XP
{
return ::SetThreadLocale(lcLocale) ? true : false;
}
}
윈도우 7 x64 에서 XP 에서 했던 기억을 더듬어서 추가하려고 했는데.. 드라이버 목록에 SQL Server 와 SQL Native Client 밖에 목록에 없네요..
아.. 뭐 되는게 없네.. 좌절하고 딴짓좀 하다가 문득 생각난게..
"아.. 64bit라 그런가?" 하고 찾아봤더니 32bit ODBC 관리자를 실행하면 되는거랩니다.
실행 -> "c:\windows\syswow64\odbcad32.exe" 로 실행하면 목록에 보일겁니다.
출처: https://msmvps.com/blogs/spywaresucks/archive/2007/05/11/897398.aspx
아악... 실행도 안되는건가..
classpath 와 path 를 점검해봐도 별 문제는 없어보입니다..
인터넷을 뒤져보니...
원인은 메모리 부족으로 JVM이 종료가 된다는 글이 보입니다.
eclipse.ini 파일의 -Xmx512m를 -Xmx256m 정도로 변경하는 걸로 해결이 된다고 합니다.
그런데.. 이미 256m 으로 되어있네요 [...]
다른 글을 찾아봅니다.
...--launcher.XXMaxPermSize 옵션을 제거하면 된다는 글이 보입니다.... 적용 후 실행해봤지만 역시나 안됩니다.
메모리 부족 문제는 아닌거 같네요.
JVM path 가 잘못되어있는건 아닌가하고 Program files 의 java 디렉토리로 가봤는데.. java 가 여러곳에 들어있네요.
JVM 경로를 강제로 설정하는 방법이 없나하고 찾아 추가를 합니다.
-vm
C:\Program Files\Java\jdk1.6.0_12\bin\javaw.exe
추가 후 다행히 실행이 잘되네요. ;)
이제 Android App 개발에 대해 연구나 해봐야겠습니다.