2013-05-28 6 views

답변

4

REBOL 3에서 당신이 rebol 실행 파일과 같은 디렉토리에 저장하도록되어 rebol.r를 사용하여 코드를로드를 참조하십시오. 해당 디렉토리의 파일은 사용자의 권한으로 실행되는 프로그램에서 쓰기 쉽기 때문에 사용자의 홈 디렉토리에서 rebol.r을로드하지 않으므로 악성 코드를 넣을 수 있습니다. rebol 실행 파일을 저장하는 장소는 사용자 코드 작성에 대해보다 쉽게 ​​보호 할 수 있다고 가정합니다.

파일 user.r은 사용자 지정 설정 및 기본 설정을 저장하기 위해 예약되어 있으며 절차가없는 방언으로 표현됩니다 (아직 논의하지 않았 음). 비록 그것이 돌아 오더라도 코드를로드하는 방법이 아니기 때문에 rebol.r이 사용자의 홈 디렉토리에서로드되지 않는 것과 같은 이유가됩니다. 그것은 단지 환경 ​​설정을위한 것입니다.

사용자 특정 코드를로드하려면 rebol.r의 코드를 사용하여 명시 적으로 지정하고 보안 문제에주의하십시오. 사용자 특정 코드에 대한 필요성은 Rebol 3에서는 드뭅니다.

Rebol 3의 모듈 시스템을 활용할 수도 있습니다. 대부분의 라이브러리 및 유틸리티 코드는 모듈에서 정의하는 것이 더 좋으며, system/options/module-paths을 설정하여 해당 모듈을 둘 곳을 결정할 수 있습니다. 그런 다음 실제 위치를 알 필요없이 스크립트는 이름별로 실제 모듈을 가져옵니다. %.reb이 마음에 들지 않으면 모듈의 기본 파일 확장자 인 system/options/default-suffix을 설정할 수도 있습니다.

코드의 필요성이 스크립트에 국한되기 때문에 전역 적으로 사용할 코드를로드하는 것이 드뭅니다. 이러한 사용 중 하나는 rebol.r에 확장을로드하여 보안을 잠그기 때문에 더 이상 확장을로드 할 수 없도록합니다. 이렇게하면 확장을 승인 된 목록으로 제한 할 수 있습니다. 모든 글로벌 코드는 지연로드 될 수 있으므로 필요없는 스크립트에 대해 시스템이 복잡해지지 않습니다. 지연로드 코드는 스크립트에서 요청하기 전에는 실제로 가져올 수 없습니다.

+0

현재 시작시 gui를로드 할 필요가 있습니다. 그래서 load-gui에 rebol.r을 시도하고 편집기를로드합니다. –