샌드박스
샌드박스 페이지는 연습 공간입니다. 가상 바탕 화면에 가상 창을 배치하고, 단계를 만들고, 실행합니다. 엔진은 가상 창에 대해서만 단계를 실행하고 일어난 일을 돌려보내며, 페이지는 이를 한 단계씩 재생합니다. 실제 바탕 화면에는 아무것도 닿지 않습니다. 가상 창은 실제 창이 아니라 그림입니다.
① 단계 실행. ② 가상 바탕 화면. ③ 실행할 내용과 실행 시작 시의 상태.
가상 바탕 화면
바탕 화면에는 화면이 한두 개 있고, 대역이라고 부르는 가상 창을 최대 16개까지 둘 수 있습니다. 페이지를 처음 열면 대역 몇 개와 짧은 예제가 있는 연습용 데스크톱 레이아웃이 들어 있습니다.
- 대역을 클릭하면 선택되며, 빈 바탕 화면을 클릭하면 선택이 해제됩니다. 제목 표시줄을 끌어 옮기고, 모서리를 끌어 크기를 바꿉니다(보통 상태에서만).
- 선택한 대역에는 창 설정, 이 창 위에서 제스처 시작, 앞으로 가져오기, 뒤로 보내기, 복제, 제거가 있는 도구 모음이 나타납니다.
- 창 설정에서 제목, 클래스 이름, 프로그램 이름, 위치와 크기, 상태(보통, 최소화, 최대화), 항상 위를 설정합니다. 제목, 클래스, 프로그램으로 창을 찾는 단계는 이 값으로 대역을 찾습니다.
- 대역 하나에는 제스처 배지가 붙습니다. 실행은 그 대역 위에서 제스처를 그린 것처럼 동작하므로, 그 대역이 대상 창입니다. 실행이 시작될 때 보이는 대역 중 맨 앞의 대역에 포커스가 있고, 포인터는 제스처 창의 가운데에 있습니다.
- 최소화된 대역은 복원될 위치에 흐리게 그려지므로 여전히 선택할 수 있습니다.
- 창 추가는 대역을 추가합니다.
각 화면의 오른쪽 아래 모서리에는 "주 화면 · 1920 × 1080" 같은 칩이 있습니다. 클릭하면 화면 크기를 설정할 수 있으며, 두 번째 화면의 칩에는 화면 제거도 있습니다. 화면이 하나일 때 화면 추가를 누르면 첫 번째 화면 오른쪽에 두 번째 화면이 추가됩니다.
고급 모드. 화면 설정에는 배율(100~500%)과 식별 이름도 있으며, 장치 경로가 표시됩니다. 스크립트는 장치 경로나 이 이름으로 화면을 찾을 수 있습니다.
화면 위치는 반전되지 않으므로, 바탕 화면은 모든 언어에서 항상 왼쪽에서 오른쪽으로 그려집니다.
키보드 사용
Tab을 눌러 대역 사이를 이동합니다. 포커스가 있는 대역이 선택됩니다. 화살표 키는 대역을 10픽셀 (Ctrl과 함께 누르면 1픽셀) 옮기고, Shift+화살표 키는 크기를 바꾸고, Enter나 F2는 설정을 열고, Delete는 대역을 제거합니다. Esc는 설정 상자를 닫습니다.
레이아웃
레이아웃은 대역, 화면, 시작 클립보드, 메시지 상자 응답을 포함한 바탕 화면입니다. 레이아웃 목록에서 레이아웃을 고릅니다. 그 옆의 레이아웃 옵션 단추에는 새 레이아웃(현재 레이아웃의 복사본), 레이아웃 이름 바꾸기, 레이아웃 삭제가 있습니다. 마지막 레이아웃은 삭제할 수 없으며, 이름은 고유해야 합니다.
레이아웃과 시험하던 단계는 구성과는 별도로 이 컴퓨터의 Windows 계정에 보관됩니다. 내보내지지 않으며 구성 파일에 포함되지 않습니다.
실행할 내용
실행할 내용 탭에는 작업의 편집기와 같은 단계 편집기가 있습니다(단계 편집기).
고급 모드. 편집기 위의 단계 / 스크립트 전환 단추로 스크립트를 대신 시험할 수 있습니다. 단계가 있는 상태에서 스크립트로 전환하면 작업 페이지에서처럼 변환해 주겠다고 제안합니다. 간단히 모드로 돌아가면 페이지에 다시 단계가 표시되며, 스크립트는 유지됩니다.
실행 전
가상 바탕 화면에는 자체 클립보드와 자체 메시지 상자가 있습니다. 실행 전 탭에서 이를 설정합니다. 바탕 화면 아래의 줄에 둘 다 요약되어 있으며, 클릭하면 탭이 열립니다.
- 클립보드: 실행이 시작될 때 클립보드에 들어 있는 텍스트(최대 256자). 비워 두면 빈 클립보드로 시작합니다. 실제 클립보드는 절대 읽거나 바꾸지 않습니다.
- 메시지 상자 응답: 실행이 표시하는 메시지 상자마다 한 행(상자 1, 상자 2 등)으로, 최대 16개입니다. 각 상자는 목록의 다음 응답을 받습니다. 그 응답이 상자의 단추에 없거나 목록이 다 떨어지면 상자의 첫 번째 단추가 눌립니다.
실행과 재생
실행 ①을 클릭합니다. 단계가 엔진으로 가고, 엔진은 레이아웃에 대해 단계를 실행한 뒤 일어난 모든 일을 돌려보냅니다. 그러면 페이지가 바탕 화면에서 이를 재생합니다.
- 각 단계는 한 박자씩 재생되며, 목록에서 해당 단계가 강조 표시됩니다. 대기는 실행 자체의 시간대로 재생됩니다.
- 재생 / 일시 중지, 한 단계씩(다음 박자로), 다시 재생, 0.5×~4×의 속도, 레이아웃으로 돌아가기가 있습니다. 레이아웃이나 단계를 바꿔도 재생이 끝납니다.
- 재생하는 동안 바탕 화면 아래의 줄에 그 순간 클립보드에 들어 있는 내용이 표시됩니다. 실행이 표시한 메시지 상자는 누른 단추가 켜진 상태로 주 화면에 그려집니다.
- 단계가 로그에 쓴 내용은 출력된 텍스트 아래에 나타납니다.
- 끝나면 페이지에 실행이 끝났습니다. 문구가 표시되거나, 어느 단계가 왜 실패했는지 표시됩니다. 스크립트에서는 대신 줄을 알려 줍니다.
실행은 다음 경우에 메시지와 함께 일찍 멈춥니다.
- 파일, 다른 프로그램, 플러그 인, 코드 조각, 전원 및 로그아웃 기본 제공 함수처럼 샌드박스 밖으로 나가는 기본 제공 함수를 사용하는 경우(샌드박스에서는 사용할 수 없습니다.)
- 명령을 200,000개 넘게 실행하거나, 이벤트를 2,000개 넘게 기록하거나, 자체 시간으로 10분에 도달한 경우(예: 끝나지 않는 반복)
- 8,000자보다 긴 경우(아예 실행되지 않음)
컴파일 오류나 엔진의 무응답은 재생 없이 표시됩니다.
샌드박스가 시뮬레이션하지 않는 것
샌드박스는 흉내만 낼 뿐이며, 실제 프로그램은 다르게 동작할 수 있습니다.
- 포커스 규칙, 창 안의 컨트롤, 관리자 권한으로 실행되는 프로그램은 시뮬레이션하지 않습니다.
- 대역에는 선택 영역이 없으므로 복사 키 조합은 아무것도 복사하지 않습니다. 입력과 붙여넣기는 활성 대역에 텍스트를 추가합니다.
- 최소화된 대역은 Windows가 최소화된 창에 부여하는 위치를 보고합니다.
- 가상 화면의 장치 경로는 만들어 낸 것이므로, 실제 모니터의 장치 경로를 지정한 단계는 아무것도 찾지 못합니다. 식별 이름은 일치합니다.
단계 가져가기
- 단계 복사(스크립트에서는 스크립트 복사)는 실행할 내용을 클립보드에 복사합니다.
- 코드 조각으로 저장은 단계 또는 스크립트로 코드 조각을 만들고 코드 조각 페이지에서 엽니다 (코드 조각). 그곳에서 작업이 코드 조각을 호출하게 하거나, 단계를 작업에 복사할 수 있습니다.