다음과 같은 오류 메시지를 띄우면서 삭제가 안되는 경우에 해당됩니다.


"폴더(파일) 엑세스가 거부됨"

"이 작업을 수행하기 위한 권한이 필요합니다."

"이 폴더를 변경하려면 SYSTEM에서 사용 권한을 부여 받아야 합니다."




1) 모든 권한 부여하기 : 모든 권한 부여.zip


2) 모든 권한 부여하기 취소 : 모든 권한 부여 제거하기.zip



출처: http://nubiz.tistory.com/339 [Life is an egg.]





모든 권한 부여 reg를 실행, 설치하면 파일/폴더에 마우스 오른쪽 버튼 클릭했을 때 아래 그림 처럼 모든 권한 부여 옵션이 생깁니다.



파일이 사용중인 경우가 아닌데 지워지지 않는 경우는 대부분 권한 획득으로 삭제가 가능합니다.


(상세한 설명은 출처의 포스트를 참고해주세요)


권한 부여가 더이상 필요 없을 때에는 모든 권한 부여 제거하기를 다시 실행해주시면 옵션이 제거됩니다.




출처: http://nubiz.tistory.com/339 [Life is an egg.]






XP 시절 사용하던 계산기 프로그램과 그림판 프로그램입니다.

필요하신 분들 계실까봐... ㅎ


계산기 : calc.7z

그림판 : mspaint.7z



XP 계산기



XP 그림판


알리에서 구입한 지문 인식기.

2017년 1월 19일 구입하여 2월 21일 도착.

약 1개월이 걸려서 중국에서 나한테 도착했다.


중국에서 온 물건은 우체국을 통해 배달된다.


포장을 뜯고 열어보니 약간은 허접하게 포장된 제품이 나온다.


제품 포장을 뜯고 내용물을 보니 메뉴얼, 설치 CD, 지문 인식기, USB (미니 USB) 이렇게 구성품이 들어있다.


지문 인식기의 최종 마감 상태는 "중국산" 느낌이 난다.


포장도 그렇고 제품 외관도 그렇지만, 제대로 동작만 된다면 OK.


USB를 꽂고 제품을 인식 시키니 장치 관리자에 느낌표가 뜬다.

장치 드라이버가 아직 설치 되지 않았음이다.




이제 같이 들어온 CD를 넣고 OS버전에 맞는 설치 프로그램을 설치한다.

메뉴얼에는 setup.exe 먼저 그다음에 BioExcess.exe를 나중에 설치 하라고 하는데, 필자가 직접 해 본 결과 아무나 먼저 설치해도 상관 없다.

그냥 순서 상관 없이 모두 설치만 하면 된다.


그리고 나서 재부팅을 한다.

설치 후 처음 재부팅하는 것이라면 다음 화면을 맞이한다.


이제 BioExcess 프로그램을 실행할 시간이다.



재부팅 한 다음에 시작 메뉴에서 BioExcess를 실행한다.



처음 실행하는 경우 아래와 같이 지문으로 윈도를 로그인할 수 있도록 마법사가 실행된다.

처음 화면은 그냥 넘어간다.


지문 인식기가 제대로 동작하는지 테스트 하는 페이지.


윈도 로그인 하기 위한 비밀번호 등록.


손가락을 클릭해서 원하는 손가락의 지문을 등록한다.


필자는 1개만 등록했지만 필요한 수만큼 등록하도록 한다.


뭔가 열심히 하다가.....


끝난다.


그러면 다음 로그인 화면에 새로 생긴 화면을 볼 수 있다.

이런게 보이면 지문을 긁으면 로그인 할 수 있다.




egistec 지문 인식기 프로그램은 다음을 클릭해서 다운 받아 설치한다.

WIN7

      WIN7 x64 드라이버 + 응용 프로그램

WIN7 x86 드라이버 (응용 프로그램은 위 링크 다운 받아 사용)

WIN8

     Win8용 드라이버 설치 파일

     위에꺼 안되면 이걸로 설치하기

     Win8용 응용 프로그램 설치 파일




다음 코드를 수행하면 pure virtual function call 에러가 발생되면서 프로그램이 죽는다.





	class A
	{
	public:
		A() {
		}

		void intermediate_call() {
			// Bad: virtual function call during object destruction
			virtual_function();
		}

		virtual void virtual_function() = 0;

		virtual ~A() {
			intermediate_call();
		}
	};

	class B : public A
	{
	public:
		// override virtual function in A
		void virtual_function()
		{
			printf("B::virtual_function called\n");
		}
	};



	B myObject;

	// This call behaves like a normal virtual function call.
	// Print statement shows it invokes B::virtual_function.
	myObject.virtual_function();


메모리릭이 발생하면 디버거를 종료했을 때 이런 메시지가 출력된다.

Detected memory leaks!
Dumping objects ->
{103144} normal block at 0x01C79B18, 12 bytes long.
Data: <            > 18 9B C7 01 18 9B C7 01 CD CD CD CD 

왠 만하면 어느 파일의 몇 번째 줄에서 메모리릭이 발생했다고 알려주지만, 이 경우처럼 디버거가 알려주지 못하는 경우도 많고, for문 안에서 메모리릭이 발생하는 경우처럼 위치만 알아서는 정확히 언제 발생하는지 알기 어려울 때도 있다. 이럴 때 사용할 수 있는 것이 중괄호안에 들어있는 숫자다. 이 숫자는 메모리 할당 번호(Memory Allocation Number)인데, 번호가 103144라는 것은 이 프로그램에서 할당받은 메모리 중에서 103144번째 블록이라는 뜻이다(헉... 내 프로그램이 메모리를 이렇게 많이 할당받았던가 -0-;;).

프로그램 코드의 적당한 위치에 

_crtBreakAlloc = 103144; 
라 고 적어주고 디버거를 실행하면 이 메모리를 할당하려고 할 때 프로그램을 Break 시켜준다. 디버그 버전에서는 힙에 메모리를 할당할 때마다 crtdbg 라이브러리(이렇게 표현해도 되나?)가 이 변수를 체크해서 Break 해주는 것이다. 디버깅중에 Watch 윈도우에서 변수 값을 바꿔서 다른 메모리 할당 번호에서 멈출 수도 있다. 전역 변수 값을 변경하는 대신에

_CrtSetBreakAlloc(103144); 
라고 함수를 호출해주어도 마찬가지 효과가 있다.


MSDN 기술문서 중 "Detecting and Isolating Memory Leaks"를 참고했음.
 
//------------------------------------------------------------------------------------
사용 방법 설명
 

Detected memory leaks!
Dumping objects ->
{103144} normal block at 0x01C79B18, 12 bytes long.
Data: <            > 18 9B C7 01 18 9B C7 01 CD CD CD CD 

추가 헤더 파일 : #include <crtdbg.h>
 
[MFC]
~App::InitInstance() 함수 상위에 아래와 같이 문제가 발생된 메모리 블럭 설정
    ...
 
    _CrtSetBreakAlloc(103144);
    _CrtMemDumpAllObjectsSince(0); 
}
 
[Win32/Console]
main()
{
    ...
    _CrtSetBreakAlloc(103144);
    _CrtMemDumpAllObjectsSince(0); 
}


var myMsgBox=new ActiveXObject("wscript.shell");

myMsgBox.Popup ("Hey, this works")





GooWeel V18 Fastboot Driver.zip

GooWeel V18 USB Driver.zip


Visual C++ 2013에서 리소스 ID 충돌 재배치 하는 프로그램 (이전 버전도 됨)

자세한 내용은 제작사 홈페이지 참조

http://www.riverblade.co.uk/products/resorg/downloads.html




ResOrg.7z


Visual Studio 2008 (2010)에서 매크로 동작 안할때 조치 방법


1. 현상

    - Visual Studio의 Windows를 업데이트 한 이후 Visual Studio의 매크로 기능이 동작을 안한다.


2. 원인

    - 2014년 2월 14일 이후에 나온 Windows 업데이트를 적용할 경우 매크로가 작동하지 않는다.

    - 참고 자료 : Visual Studio 2010 Macros Stop Working after February 2014 Windows Update


3. 해결 방법

    1. Visual Studio 2008 혹은 2010을 종료한다.


    2. 다음 3개의 파일을 편집하여 하기 XML 데이터 내용을 추가한다.

        VS2008의 경우 아래와 같다.

 

"C:\Program Files (x86)\Common Files\Microsoft Shared\VSA\9.0\VsaEnv\vsmsvr.exe.config"

"C:\Program Files (x86)\Common Files\Microsoft Shared\VSA\9.0\VsaEnv\vsaenv.exe.config"

"C:\Program Files (x86)\Microsoft Visual Studio9.0\Common7\IDE\devenv.exe.config"




        VS2010의 경우 아래와 같다.

 

"C:\Program Files (x86)\Common Files\Microsoft Shared\VSA\9.0\VsaEnv\vsmsvr10.exe.config"

"C:\Program Files (x86)\Common Files\Microsoft Shared\VSA\9.0\VsaEnv\vsaenv10.exe.config"

"C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\devenv.exe.config"



    3. 상기 파일을 편집하여 다음 내용 추가

<configuration>

... <runtime> ... <AllowDComReflection enabled="true"/> ... </runtime> ... </configuration>




   3. 개발툴을 재 실행한다.




참고자료 : http://visualstudioextensions.vlasovstudio.com/2014/02/13/visual-studio-2010-macros-stop-working-after-february-2014-windows-update/




+ Recent posts