본문 바로가기

2015/07

윈도우 버전 구하기 (두번째) EXE 에서는 이 포스팅에서 나온대로 manifest를 추가하면 정상적으로 윈도우 버전을 가져 올 수 있다. 하지만 DLL로 모듈을 생성할 경우 EXE에 종속된 manifest를 따라가기 때문에 내가 의도한 대로 윈도우 버전을 얻을 수 없다. 이 경우 WMI를 통해서 정상적인 윈도우 버전을 얻을 수 있다. #include #pragma comment(lib, "wbemuuid.lib") bool CreateLocalConnection(bool set_blanket, IWbemServices** wmi_services) { base::win::ScopedComPtr wmi_locator; HRESULT hr = wmi_locator.CreateInstance(CLSID_WbemLocator, NULL, C.. 더보기
윈도우 버전 가져오기 win32에서 윈도우 버전을 가져오기 위해서는 일반적으로 GetVersionEx를 사용한다. 그러나 윈도우 버전이 올라갈수록 이 함수가 정상 동작을 하지 않는다. 이 함수를 정상 동작하게 하기 위해서는 EXE에 추가적인 manifest를 임베딩 시키면 정상적으로 동작을 하게 된다. 위 manifest를 별도로 저장후 visual studio 프로젝트 설정에 추가하면 정상 동작한다. 더보기
엣지에서 IE 쓰지 않기 윈도우 10에서는 엣지 브라우저가 탑재되어 있지만 엣지에서 국내 사이트를 사용할려면 아래와 같은 페이지를 볼 수 있다. 간단한 설정 추가로 이런 페이지를 보지 않는 방법이 있다. 주소창에 about:flags 라고 입력하면 개발자 설정이라는 페이지가 보인다. 그 페이지에서 "Microsoft 호환성 목록 사용" 체크를 해제 할 경우 위와 같은 페이지를 보지 않고 엣지로만 사용이 가능하다. 물론 MS에서 IE에 의존적인 기능들이 들어 있기 때문에 IE를 사용하도록 처리한 부분이니 꼭 필요한 사람들만 사용해 보자. 더보기
자바스크립트로 UA 변경하기 var _newUA = navigator.userAgent.replace(/ ?Swing\/[0-9.]*/, '');Object.defineProperty(window.navigator, "userAgent", { get: function() {return _newUA}}); // "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/35.0.1916.114 Safari/537.36 Swing/2.3.0.0"함수 호출 후// "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/35.0.1916.114 Safari/5.. 더보기