You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: uwp/apps-for-education/index.md
+4-4Lines changed: 4 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -16,21 +16,21 @@ The following resources will help you write a Universal Windows app for educatio
16
16
17
17
## Accessibility
18
18
19
-
Education apps need to be accessible. See [Developing apps for accessibility](https://developer.microsoft.com/windows/accessible-apps) for more information.
19
+
Education apps need to be accessible. See [Accessibility](/windows/apps/design/accessibility/accessibility) for more information.
20
20
21
21
## Secure assessments
22
22
23
23
Assessment/testing apps will often need to produce a *locked down* environment in order to prevent students from using other computers or Internet resources during a test. This functionality is available through the [Take a Test API](take-a-test-api.md). See the [Take a Test](/education/windows/take-tests-in-windows-10) web app in the Windows IT Center for an example of a testing environment with locked down online access for high-stakes testing.
24
24
25
25
## User input
26
26
27
-
User input is a critical part of education apps; UI controls must be responsive and intuitive so as not to break the focus of their users. For a general overview of the input options available in a Universal Windows app, see the [Input primer](/windows/apps/design/input/input-primer) and the topics below it in the Design & UI section. Additionally, the following sample apps showcase basic UI handling in the Universal Windows Platform.
27
+
User input is a critical part of education apps; UI controls must be responsive and intuitive so as not to break the focus of their users. For a general overview of the input options available in a Universal Windows app, see the [Interaction primer](/windows/apps/develop/input/input-primer) and the topics below it in the Design & UI section. Additionally, the following sample apps showcase basic UI handling in the Universal Windows Platform.
28
28
29
29
-[Basic input sample](https://github.com/Microsoft/Windows-universal-samples/tree/master/Samples/BasicInput) shows how to handle input in Universal Windows Apps.
30
30
-[User interaction mode sample](https://github.com/Microsoft/Windows-universal-samples/tree/master/Samples/UserInteractionMode) shows how to detect and respond to the user interaction mode.
31
31
-[Focus visuals sample](https://github.com/Microsoft/Windows-universal-samples/tree/master/Samples/XamlFocusVisuals) shows how to take advantage of the new system drawn focus visuals or create your own custom focus visuals if the system drawn ones do not fit your needs.
32
32
33
-
The Windows Ink platform can make education apps shine by fitting them with an input mode that students are accustomed to. See [Pen interactions and Windows Ink](/windows/apps/design/input/pen-and-stylus-interactions) and the topics below it for a comprehensive guide to implementing Windows Ink in your app. The following sample apps provide working examples of this API.
33
+
The Windows Ink platform can make education apps shine by fitting them with an input mode that students are accustomed to. See [Pen interactions and Windows Ink](/windows/apps/develop/input/pen-and-stylus-interactions) and the topics below it for a comprehensive guide to implementing Windows Ink in your app. The following sample apps provide working examples of this API.
34
34
35
35
-[Ink Analysis sample](https://github.com/microsoft/Windows-universal-samples/tree/main/Samples/InkAnalysis) demonstrates how to use ink functionality (such as capturing, manipulating, and interpreting ink strokes) in Universal Windows apps using JavaScript.
36
36
-[Simple ink sample](https://github.com/Microsoft/Windows-universal-samples/tree/master/Samples/SimpleInk) demonstrates how to use ink functionality (such as capturing ink from user input and performing handwriting recognition on ink strokes) in Universal Windows apps using C#.
@@ -42,4 +42,4 @@ Education apps are often released under special circumstances to a specific orga
42
42
43
43
## Related Topics
44
44
45
-
-[Windows 10/11 for Education](/education/windows/index) on the Windows IT Center
45
+
-[Windows for Education](/education/windows/index) on the Windows IT Center
Copy file name to clipboardExpand all lines: uwp/apps-for-education/take-a-test-api.md
+44-19Lines changed: 44 additions & 19 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -12,9 +12,10 @@ ms.localizationpriority: medium
12
12
13
13
[Take a Test](/education/windows/take-tests-in-windows-10) is a browser-based UWP app that renders locked-down online assessments for high-stakes testing, allowing educators to focus on the assessment content rather than how to provide a secure testing environment. To achieve this, it uses a JavaScript API that any web application can utilize. The Take-a-test API supports the [SBAC browser API standard](https://www.smarterapp.org/documents/SecureBrowserRequirementsSpecifications_0-3.pdf) for high stakes common core testing.
14
14
15
-
See the [Take a Test app technical reference](/education/windows/take-a-test-app-technical?f=255&MSPPError=-2147217396) for more information about the app itself. For troubleshooting help, see [Troubleshoot Microsoft Take a Test with the event viewer](troubleshooting.md).
15
+
See the [Take a Test app technical reference](/education/windows/take-a-test-app-technical) for more information about the app itself. For troubleshooting help, see [Troubleshoot Microsoft Take a Test with the event viewer](troubleshooting.md).
16
16
17
17
## Reference documentation
18
+
18
19
The Take a Test APIs exist in the following namespaces. Note that all of the APIs depend on a global `SecureBrowser` object.
19
20
20
21
| Namespace | Description |
@@ -47,13 +48,15 @@ The security namespace allows you to lock down the device, check the list of use
47
48
<spanid="lockDown"></span>
48
49
49
50
### lockDown
51
+
50
52
Locks down the device. Also used to unlock the device. The testing web application will invoke this call prior to allowing students to start testing. The implementer is required to take any actions necessary to secure the testing environment. The steps taken to secure the environment are device specific and for example, include aspects such as disabling screen captures, disabling voice chat when in secure mode, clearing the system clipboard, entering into a kiosk mode, disabling Spaces in OSX 10.7+ devices, etc. The testing application will enable lockdown before an assessment commences and will disable the lockdown when the student has completed the assessment and is out of the secure test.
51
53
52
54
**Syntax**
53
55
`void SecureBrowser.security.lockDown(Boolean enable, Function onSuccess, Function onError);`
54
56
55
57
**Parameters**
56
-
*`enable` - **true** to run the Take-a-Test app above the lock screen and apply policies discussed in this [document](/education/windows/take-a-test-app-technical?f=255&MSPPError=-2147217396). **false** stops running Take-a-Test above the lock screen and closes it unless the app is not locked down; in which case there is no effect.
58
+
59
+
*`enable` - **true** to run the Take-a-Test app above the lock screen and apply policies discussed in the [Take-a-Test app technical reference](/education/windows/take-a-test-app-technical?f=255&MSPPError=-2147217396). **false** stops running Take-a-Test above the lock screen and closes it unless the app is not locked down; in which case there is no effect.
57
60
*`onSuccess` - [optional] The function to call after the lockdown has been successfully enabled or disabled. It must be of the form `Function(Boolean currentlockdownstate)`.
58
61
*`onError` - [optional] The function to call if the lockdown operation failed. It must be of the form `Function(Boolean currentlockdownstate)`.
59
62
@@ -65,12 +68,14 @@ Windows 10, version 1709 or later
65
68
<spanid="isEnvironmentSecure"></span>
66
69
67
70
### isEnvironmentSecure
71
+
68
72
Determines whether the lockdown context is still applied to the device. The testing web application will invoke this prior to allowing students to start testing and periodically when inside the test.
*`callback` - The function to call when this function completes. It must be of the form `Function(String state)` where `state` is a JSON string containing two fields. The first is the `secure` field, which will show `true` only if all necessary locks have been enabled (or features disabled) to enable a secure testing environment, and none of these have been compromised since the app entered the lockdown mode. The other field, `messageKey`, includes other details or information that is vendor-specific. The intent here is to allow vendors to put additional information that augments the boolean `secure` flag:
75
80
76
81
```JSON
@@ -88,18 +93,20 @@ Windows 10, version 1709 or newer
88
93
<spanid="getDeviceInfo"></span>
89
94
90
95
### getDeviceInfo
96
+
91
97
Gets details about the platform on which the testing application is running. This is used to augment any information that was discernible from the user agent.
*`callback` - The function to call when this function completes. It must be of the form `Function(String infoObj)` where `infoObj` is a JSON string containing several fields. The following fields must be supported:
98
-
*`os` represents the OS type (for example: Windows, macOS, Linux, iOS, Android, etc.)
99
-
*`name` represents the OS release name, if any (for example: Sierra, Ubuntu).
100
-
*`version` represents the OS version (for example: 10.1, 10 Pro, etc.)
101
-
*`brand` represents the secure browser branding (for example: OAKS, CA, SmarterApp, etc.)
102
-
*`model` represents the device model for mobile devices only; null/unused for desktop browsers.
105
+
*`os` represents the OS type (for example: Windows, macOS, Linux, iOS, Android, etc.)
106
+
*`name` represents the OS release name, if any (for example: Sierra, Ubuntu).
107
+
*`version` represents the OS version (for example: 10.1, 10 Pro, etc.)
108
+
*`brand` represents the secure browser branding (for example: OAKS, CA, SmarterApp, etc.)
109
+
*`model` represents the device model for mobile devices only; null/unused for desktop browsers.
103
110
104
111
**Requirements**
105
112
Windows 10, version 1709 or newer
@@ -109,12 +116,14 @@ Windows 10, version 1709 or newer
109
116
<spanid="examineProcessList"></span>
110
117
111
118
### examineProcessList
119
+
112
120
Gets the list of all processes running on the client machine owned by the user. The testing application will invoke this to examine the list and compare it with a list of processes that have been deemed deny-listed during testing cycle. This call should be invoked both at the start of an assessment and periodically while the student is taking the assessment. If a deny-listed process is detected, the assessment should be stopped to preserve test integrity.
113
121
114
122
**Syntax**
115
123
`void SecureBrowser.security.examineProcessList(String[] denylistedProcessList, Function callback);`
116
124
117
-
**Parameters**
125
+
**Parameters**
126
+
118
127
*`denylistedProcessList` - The list of processes that the testing application has deny-listed.
119
128
`callback` - The function to invoke once the active processes have been found. It must be in the form: `Function(String foundDenylistedProcesses)` where `foundDenylistedProcesses` is in the form: `"['process1.exe','process2.exe','processEtc.exe']"`. It will be empty if no deny-listed processes were found. If it is null, this indicates that an error occurred in the original function call.
120
129
@@ -129,12 +138,14 @@ Windows 10, version 1709 or newer
129
138
<spanid="close"></span>
130
139
131
140
### close
141
+
132
142
Closes the browser and unlocks the device. The testing application should invoke this when the user elects to exit the browser.
133
143
134
144
**Syntax**
135
145
`void SecureBrowser.security.close(restart);`
136
146
137
-
**Parameters**
147
+
**Parameters**
148
+
138
149
*`restart` - This parameter is ignored but must be provided.
139
150
140
151
**Remarks**
@@ -148,12 +159,14 @@ Windows 10, version 1709 or newer
148
159
<spanid="getPermissiveMode"></span>
149
160
150
161
### getPermissiveMode
162
+
151
163
The testing web application should invoke this to determine if permissive mode is on or off. In permissive mode, a browser is expected to relax some of its stringent security hooks to allow assistive technology to work with the secure browser. For example, browsers that aggressively prevent other application UIs from presenting on top of them might want to relax this when in permissive mode.
*`callback` - The function to invoke when this call completes. It must be in the form: `Function(Boolean permissiveMode)` where `permissiveMode` indicates whether the browser is currently in permissive mode. If it is undefined or null, an error occurred in the get operation.
158
171
159
172
**Requirements**
@@ -164,13 +177,15 @@ Windows 10, version 1709 or newer
164
177
<spanid="setPermissiveMode"></span>
165
178
166
179
### setPermissiveMode
167
-
The testing web application should invoke this to toggle permissive mode on or off. In permissive mode, a browser is expected to relax some of its stringent security hooks to allow assistive technology to work with the secure browser. For example, browsers that aggressively prevent other application UIs from presenting on top of them might want to relax this when in permissive mode.
180
+
181
+
The testing web application should invoke this to toggle permissive mode on or off. In permissive mode, a browser is expected to relax some of its stringent security hooks to allow assistive technology to work with the secure browser. For example, browsers that aggressively prevent other application UIs from presenting on top of them might want to relax this when in permissive mode.
168
182
169
183
**Syntax**
170
184
`void SecureBrowser.security.setPermissiveMode(Boolean enable, Function callback)`
171
185
172
-
**Parameters**
173
-
*`enable` - The Boolean value indicating the intended permissive mode status.
186
+
**Parameters**
187
+
188
+
*`enable` - The Boolean value indicating the intended permissive mode status.
174
189
*`callback` - The function to invoke when this call completes. It must be in the form: `Function(Boolean permissiveMode)` where `permissiveMode` indicates whether the browser is currently in permissive mode. If it is undefined or null, an error occurred in the set operation.
175
190
176
191
**Requirements**
@@ -181,6 +196,7 @@ Windows 10, version 1709 or newer
181
196
<spanid="emptyClipBoard"></span>
182
197
183
198
### emptyClipBoard
199
+
184
200
Clears the system clipboard. The testing application should invoke this to force clear any data that may be stored in the system clipboard. The **[lockDown](#lockDown)** function also performs this operation.
185
201
186
202
**Syntax**
@@ -194,12 +210,14 @@ Windows 10, version 1709 or newer
194
210
<spanid="getMACAddress"></span>
195
211
196
212
### getMACAddress
213
+
197
214
Gets the list of MAC addresses for the device. The testing application should invoke this to assist in diagnostics.
*`callback` - The function to invoke when this call completes. It must be in the form: `Function(String addressArray)` where `addressArray` is in the form: `"['00:11:22:33:44:55','etc']"`.
204
222
205
223
**Remarks**
@@ -213,6 +231,7 @@ Windows 10, version 1709 or newer
213
231
<spanid="getStartTime"></span>
214
232
215
233
### getStartTime
234
+
216
235
Gets the time that the testing app was started.
217
236
218
237
**Syntax**
@@ -229,12 +248,14 @@ Windows 10, version 1709 or newer
229
248
<spanid="getCapability"></span>
230
249
231
250
### getCapability
232
-
Queries whether a capability is enabled or disabled.
251
+
252
+
Queries whether a capability is enabled or disabled.
`feature` - The string to determine which capability to query. Valid capability strings are "screenMonitoring", "printing", and "textSuggestions" (case insensitive).
239
260
240
261
**Return Value**
@@ -248,12 +269,14 @@ Windows 10, version 1703 or newer
248
269
<spanid="setCapability"></span>
249
270
250
271
### setCapability
272
+
251
273
Enables or disables a specific capability on the browser.
252
274
253
275
**Syntax**
254
276
`void SecureBrowser.security.setCapability(String feature, String value, Function onSuccess, Function onError)`
255
277
256
-
**Parameters**
278
+
**Parameters**
279
+
257
280
*`feature` - The string to determine which capability to set. Valid capability strings are `"screenMonitoring"`, `"printing"`, and `"textSuggestions"` (case insensitive).
258
281
*`value` - The intended setting for the feature. It must be either `"true"` or `"false"`.
259
282
*`onSuccess` - [optional] The function to call after the set operation has been completed successfully. It must be of the form `Function(String jsonValue)` where *jsonValue* is in the form: `{<feature>:true|false|undefined}`.
@@ -270,6 +293,7 @@ Windows 10, version 1703 or newer
270
293
<spanid="isRemoteSession"></span>
271
294
272
295
### isRemoteSession
296
+
273
297
Checks if the current session is logged in remotely.
274
298
275
299
**Syntax**
@@ -286,6 +310,7 @@ Windows 10, version 1709 or later
286
310
<spanid="isVMSession"></span>
287
311
288
312
### isVMSession
313
+
289
314
Checks if the current session is running within a virtual machine.
Copy file name to clipboardExpand all lines: uwp/apps-for-education/troubleshooting.md
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,8 +1,6 @@
1
1
---
2
2
description: Troubleshoot Microsoft Take a Test events and errors with the event viewer.
3
3
title: Troubleshoot Microsoft Take a Test with the event viewer.
4
-
5
-
6
4
ms.assetid: 9218e542-f520-4616-98fc-b113d5a08e0f
7
5
ms.date: 10/06/2017
8
6
ms.topic: troubleshooting-general
@@ -14,10 +12,12 @@ ms.localizationpriority: medium
14
12
You can use the Event Viewer to view Take a Test events and errors. Take a Test logs events when a lockdown request has been received, device enrollment has succeeded, lockdown policies were successfully applied, and more.
15
13
16
14
To enable viewing events in the Event Viewer:
15
+
17
16
1. Open the `Event Viewer`
18
17
2. Navigate to `Applications and Services Logs > Microsoft > Windows > Management-SecureAssessment`
19
18
3. Right-click `Operational` and select `Enable Log`
0 commit comments