2 * Registry testing program
4 * Copyright 1998 Matthew Becker
6 * The return codes were generated in an NT40 environment, using lcc-win32
9 * When compiling under lcc-win32, I get three (3) warning, but they all
10 * seem to be issues with lcc.
12 * If creating a new testing sequence, please try to clean up any
13 * registry changes that are made.
23 /* True this when security is implemented */
24 #define CHECK_SAM FALSE
27 * NOTES: These individual routines are listed in alphabetical order.
29 * They are meant to test error conditions. Success conditions are
30 * tested in the sequences found at the end.
33 /******************************************************************************
39 fprintf(stderr
, "Testing RegCloseKey...\n");
41 lSts
= RegCloseKey((HKEY
)2);
42 if (lSts
!= ERROR_INVALID_HANDLE
) fprintf(stderr
, " 1:%ld\n",lSts
);
44 lSts
= RegCloseKey(HKEY_LOCAL_MACHINE
);
45 if (lSts
!= ERROR_SUCCESS
) fprintf(stderr
, " 2:%ld\n",lSts
);
47 /* Check twice just for kicks */
48 lSts
= RegCloseKey(HKEY_LOCAL_MACHINE
);
49 if (lSts
!= ERROR_SUCCESS
) fprintf(stderr
, " 3:%ld\n",lSts
);
52 /******************************************************************************
55 void TestConnectRegistry()
59 fprintf(stderr
, "Testing RegConnectRegistry...\n");
61 lSts
= RegConnectRegistry("",(HKEY
)2,&hkey
);
62 if (lSts
!= ERROR_SUCCESS
) fprintf(stderr
, " 1:%ld\n",lSts
);
64 lSts
= RegConnectRegistry("",HKEY_LOCAL_MACHINE
,&hkey
);
65 if (lSts
!= ERROR_SUCCESS
) fprintf(stderr
, " 2:%ld\n",lSts
);
68 lSts
= RegConnectRegistry("\\\\regtest",HKEY_LOCAL_MACHINE
,&hkey
);
69 if (lSts
!= ERROR_BAD_NETPATH
) fprintf(stderr
, " 3:%ld\n",lSts
);
73 /******************************************************************************
81 fprintf(stderr
, "Testing RegCreateKey...\n");
83 lSts
= RegCreateKey((HKEY
)2,"",&hkey
);
84 if (lSts
!= ERROR_BADKEY
) fprintf(stderr
, " 1:%ld\n",lSts
);
86 lSts
= RegCreateKey(HKEY_LOCAL_MACHINE
,"",&hkey
);
87 if (lSts
!= ERROR_SUCCESS
) fprintf(stderr
, " 2:%ld\n",lSts
);
90 lSts
= RegCreateKey(HKEY_LOCAL_MACHINE
,"\\asdf",&hkey
);
91 if (lSts
!= ERROR_BAD_PATHNAME
) fprintf(stderr
, " 3:%ld\n",lSts
);
94 lSts
= RegCreateKey(HKEY_LOCAL_MACHINE
,"asdf\\",&hkey
);
95 if (lSts
!= ERROR_INVALID_PARAMETER
) fprintf(stderr
, " 4:%ld\n",lSts
);
98 lSts
= RegCreateKey(HKEY_LOCAL_MACHINE
,"\\asdf\\",&hkey
);
99 if (lSts
!= ERROR_BAD_PATHNAME
) fprintf(stderr
, " 5:%ld\n",lSts
);
102 /******************************************************************************
105 void TestCreateKeyEx()
111 fprintf(stderr
, "Testing RegCreateKeyEx...\n");
113 lSts
= RegCreateKeyEx((HKEY
)2,"",0,"",0,0,NULL
,&hkey
,&dwDisp
);
114 if (lSts
!= ERROR_INVALID_HANDLE
) fprintf(stderr
, " 1:%ld\n",lSts
);
116 lSts
= RegCreateKeyEx(HKEY_LOCAL_MACHINE
,"regtest",0,"",0,0,NULL
,&hkey
,
118 if (lSts
!= ERROR_INVALID_PARAMETER
) fprintf(stderr
, " 2:%ld\n",lSts
);
120 lSts
= RegCreateKeyEx(HKEY_LOCAL_MACHINE
,"regtest",0,"asdf",0,
121 KEY_ALL_ACCESS
,NULL
,&hkey
,&dwDisp
);
122 if (lSts
!= ERROR_INVALID_PARAMETER
) fprintf(stderr
, " 3:%ld\n",lSts
);
124 lSts
= RegCreateKeyEx(HKEY_LOCAL_MACHINE
,"regtest",0,"",0,
125 KEY_ALL_ACCESS
,NULL
,&hkey
,&dwDisp
);
126 if (lSts
!= ERROR_INVALID_PARAMETER
) fprintf(stderr
, " 4:%ld\n",lSts
);
130 /******************************************************************************
136 fprintf(stderr
, "Testing RegDeleteKey...\n");
138 lSts
= RegDeleteKey((HKEY
)2, "asdf");
139 if (lSts
!= ERROR_INVALID_HANDLE
) fprintf(stderr
, " 1:%ld\n",lSts
);
141 lSts
= RegDeleteKey(HKEY_CURRENT_USER
, "asdf");
142 if (lSts
!= ERROR_FILE_NOT_FOUND
) fprintf(stderr
, " 2:%ld\n",lSts
);
145 lSts
= RegDeleteKey(HKEY_CURRENT_USER
, "");
146 if (lSts
!= ERROR_ACCESS_DENIED
) fprintf(stderr
, " 3:%ld\n",lSts
);
150 /******************************************************************************
153 void TestDeleteValue()
156 fprintf(stderr
, "Testing RegDeleteValue...\n");
158 lSts
= RegDeleteValue((HKEY
)2, "asdf");
159 if (lSts
!= ERROR_INVALID_HANDLE
) fprintf(stderr
, " 1:%ld\n",lSts
);
161 lSts
= RegDeleteValue(HKEY_CURRENT_USER
, "");
162 if (lSts
!= ERROR_FILE_NOT_FOUND
) fprintf(stderr
, " 2:%ld\n",lSts
);
164 lSts
= RegDeleteValue(HKEY_CURRENT_USER
, "asdf");
165 if (lSts
!= ERROR_FILE_NOT_FOUND
) fprintf(stderr
, " 3:%ld\n",lSts
);
167 lSts
= RegDeleteValue(HKEY_CURRENT_USER
, "\\asdf");
168 if (lSts
!= ERROR_FILE_NOT_FOUND
) fprintf(stderr
, " 4:%ld\n",lSts
);
171 /******************************************************************************
180 fprintf(stderr
, "Testing RegEnumKey...\n");
182 sVal
= (char *)malloc(lVal
* sizeof(char));
184 lSts
= RegEnumKey((HKEY
)2,3,sVal
,lVal
);
185 if (lSts
!= ERROR_INVALID_HANDLE
) fprintf(stderr
, " 1:%ld\n",lSts
);
187 lSts
= RegEnumKey(HKEY_CURRENT_USER
,-1,sVal
,lVal
);
188 if (lSts
!= ERROR_NO_MORE_ITEMS
) fprintf(stderr
, " 2:%ld\n",lSts
);
190 lSts
= RegEnumKey(HKEY_CURRENT_USER
,0,sVal
,lVal
);
191 if (lSts
!= ERROR_MORE_DATA
) fprintf(stderr
, " 3:%ld\n",lSts
);
194 /******************************************************************************
206 fprintf(stderr
, "Testing RegEnumKeyEx...\n");
208 sVal
= (char *)malloc(lLen1
* sizeof(char));
210 sClass
= (char *)malloc(lLen2
* sizeof(char));
212 lSts
= RegEnumKeyEx((HKEY
)2,0,sVal
,&lLen1
,0,sClass
,&lLen2
,&ft
);
213 if (lSts
!= ERROR_INVALID_HANDLE
) fprintf(stderr
, " 1:%ld\n",lSts
);
215 lSts
= RegEnumKeyEx(HKEY_LOCAL_MACHINE
,0,sVal
,&lLen1
,0,sClass
,&lLen2
,&ft
);
216 if (lSts
!= ERROR_MORE_DATA
) fprintf(stderr
, " 2:%ld\n",lSts
);
218 lSts
= RegEnumKeyEx(HKEY_LOCAL_MACHINE
,0,sVal
,&lLen1
,0,sClass
,&lLen2
,&ft
);
219 if (lSts
!= ERROR_MORE_DATA
) fprintf(stderr
, " 3:%ld\n",lSts
);
222 /******************************************************************************
234 fprintf(stderr
, "Testing RegEnumValue...\n");
236 sVal
= (char *)malloc(lVal
* sizeof(char));
238 bVal
= (char *)malloc(lLen1
* sizeof(char));
240 lSts
= RegEnumValue((HKEY
)2,-1,sVal
,&lVal
,0,&lType
,NULL
,&lLen1
);
241 if (lSts
!= ERROR_INVALID_HANDLE
) fprintf(stderr
, " 1:%ld\n",lSts
);
243 lSts
= RegEnumValue(HKEY_LOCAL_MACHINE
,-1,sVal
,&lVal
,0,&lType
,NULL
,&lLen1
);
244 if (lSts
!= ERROR_NO_MORE_ITEMS
) fprintf(stderr
, " 2:%ld\n",lSts
);
246 lSts
= RegEnumValue(HKEY_LOCAL_MACHINE
,0,sVal
,&lVal
,0,&lType
,NULL
,&lLen1
);
247 if (lSts
!= ERROR_SUCCESS
) fprintf(stderr
, " 3:%ld\n",lSts
);
249 lSts
= RegEnumValue(HKEY_LOCAL_MACHINE
,1,sVal
,&lVal
,0,&lType
,bVal
,&lLen1
);
250 if (lSts
!= ERROR_NO_MORE_ITEMS
) fprintf(stderr
, " 4:%ld\n",lSts
);
253 /******************************************************************************
259 fprintf(stderr
, "Testing RegFlushKey...\n");
261 lSts
= RegFlushKey((HKEY
)2);
262 if (lSts
!= ERROR_INVALID_HANDLE
) fprintf(stderr
, " 1:%ld\n",lSts
);
264 lSts
= RegFlushKey(HKEY_LOCAL_MACHINE
);
265 if (lSts
!= ERROR_SUCCESS
) fprintf(stderr
, " 2:%ld\n",lSts
);
268 /******************************************************************************
271 void TestGetKeySecurity()
274 SECURITY_INFORMATION si
;
275 SECURITY_DESCRIPTOR sd
;
278 fprintf(stderr
, "Testing RegGetKeySecurity...\n");
281 lSts
= RegGetKeySecurity((HKEY
)2,si
,&sd
,&lLen
);
282 if (lSts
!= ERROR_INVALID_HANDLE
) fprintf(stderr
, " 1:%ld\n",lSts
);
284 lSts
= RegGetKeySecurity(HKEY_LOCAL_MACHINE
,si
,&sd
,&lLen
);
285 if (lSts
!= ERROR_INSUFFICIENT_BUFFER
) fprintf(stderr
, " 2:%ld\n",lSts
);
287 si
= GROUP_SECURITY_INFORMATION
;
288 lSts
= RegGetKeySecurity(HKEY_LOCAL_MACHINE
,si
,&sd
,&lLen
);
289 if (lSts
!= ERROR_SUCCESS
) fprintf(stderr
, " 3:%ld\n",lSts
);
292 /******************************************************************************
298 fprintf(stderr
, "Testing RegLoadKey...\n");
300 lSts
= RegLoadKey((HKEY
)2,"","");
301 if (lSts
!= ERROR_INVALID_PARAMETER
) fprintf(stderr
, " 1:%ld\n",lSts
);
303 lSts
= RegLoadKey(HKEY_CURRENT_USER
,"","");
304 if (lSts
!= ERROR_INVALID_PARAMETER
) fprintf(stderr
, " 2:%ld\n",lSts
);
306 lSts
= RegLoadKey(HKEY_CURRENT_USER
,"regtest","");
307 if (lSts
!= ERROR_INVALID_PARAMETER
) fprintf(stderr
, " 3:%ld\n",lSts
);
309 lSts
= RegLoadKey(HKEY_CURRENT_USER
,"\\regtest","");
310 if (lSts
!= ERROR_INVALID_PARAMETER
) fprintf(stderr
, " 4:%ld\n",lSts
);
313 lSts
= RegLoadKey(HKEY_CURRENT_USER
,"regtest","regtest.dat");
314 if (lSts
!= ERROR_PRIVILEGE_NOT_HELD
) fprintf(stderr
, " 5:%ld\n",lSts
);
316 lSts
= RegLoadKey(HKEY_CURRENT_USER
,"\\regtest","regtest.dat");
317 if (lSts
!= ERROR_PRIVILEGE_NOT_HELD
) fprintf(stderr
, " 6:%ld\n",lSts
);
321 /******************************************************************************
322 * TestNotifyChangeKeyValue
324 void TestNotifyChangeKeyValue()
329 fprintf(stderr
, "Testing RegNotifyChangeKeyValue...\n");
332 lSts
= RegNotifyChangeKeyValue((HKEY
)2, TRUE
, REG_NOTIFY_CHANGE_NAME
, 0, 0);
333 if (lSts
!= ERROR_INVALID_HANDLE
) fprintf(stderr
, " 1:%ld\n",lSts
);
335 lSts
= RegNotifyChangeKeyValue(HKEY_CURRENT_USER
, TRUE
, REG_NOTIFY_CHANGE_NAME
, 0, 1);
336 if (lSts
!= ERROR_INVALID_PARAMETER
) fprintf(stderr
, " 2:%ld\n",lSts
);
338 hEvent
= (HANDLE
)HKEY_CURRENT_USER
;
339 lSts
= RegNotifyChangeKeyValue(HKEY_CURRENT_USER
, TRUE
, REG_NOTIFY_CHANGE_NAME
, hEvent
, 1);
340 if (lSts
!= ERROR_INVALID_HANDLE
) fprintf(stderr
, " 3:%ld\n",lSts
);
343 /******************************************************************************
350 fprintf(stderr
, "Testing RegOpenKey...\n");
352 lSts
= RegOpenKey((HKEY
)72, "",&hkey
);
353 if (lSts
!= ERROR_SUCCESS
) fprintf(stderr
, " 1:%ld\n",lSts
);
356 lSts
= RegOpenKey((HKEY
)2, "regtest",&hkey
);
357 if (lSts
!= ERROR_INVALID_HANDLE
) fprintf(stderr
, " 2:%ld\n",lSts
);
359 lSts
= RegOpenKey(HKEY_CURRENT_USER
, "regtest",&hkey
);
360 if (lSts
!= ERROR_FILE_NOT_FOUND
) fprintf(stderr
, " 3:%ld\n",lSts
);
362 lSts
= RegOpenKey(HKEY_CURRENT_USER
, "\\regtest",&hkey
);
363 if (lSts
!= ERROR_BAD_PATHNAME
) fprintf(stderr
, " 4:%ld\n",lSts
);
366 /******************************************************************************
373 fprintf(stderr
, "Testing RegOpenKeyEx...\n");
375 lSts
= RegOpenKeyEx((HKEY
)2,"",0,KEY_ALL_ACCESS
,&hkey
);
376 if (lSts
!= ERROR_INVALID_HANDLE
) fprintf(stderr
, " 1:%ld\n",lSts
);
378 lSts
= RegOpenKeyEx(HKEY_CURRENT_USER
,"\\regtest",0,KEY_ALL_ACCESS
,&hkey
);
379 if (lSts
!= ERROR_BAD_PATHNAME
) fprintf(stderr
, " 2:%ld\n",lSts
);
381 lSts
= RegOpenKeyEx(HKEY_CURRENT_USER
,"regtest",0,0,&hkey
);
382 if (lSts
!= ERROR_FILE_NOT_FOUND
) fprintf(stderr
, " 3:%ld\n",lSts
);
384 lSts
= RegOpenKeyEx(HKEY_CURRENT_USER
,"regtest\\",0,0,&hkey
);
385 if (lSts
!= ERROR_FILE_NOT_FOUND
) fprintf(stderr
, " 3:%ld\n",lSts
);
388 /******************************************************************************
391 void TestQueryInfoKey()
395 unsigned long lClass
;
396 unsigned long lSubKeys
;
397 unsigned long lMaxSubLen
;
398 unsigned long lMaxClassLen
;
399 unsigned long lValues
;
400 unsigned long lMaxValNameLen
;
401 unsigned long lMaxValLen
;
402 unsigned long lSecDescLen
;
404 fprintf(stderr
, "Testing RegQueryInfoKey...\n");
407 sClass
= (char *)malloc(lClass
* sizeof(char));
409 lSts
= RegQueryInfoKey((HKEY
)2,sClass
,&lClass
,0,&lSubKeys
,&lMaxSubLen
,
410 &lMaxClassLen
,&lValues
,&lMaxValNameLen
,&lMaxValLen
,
412 if (lSts
!= ERROR_INVALID_HANDLE
) fprintf(stderr
, " 1:%ld\n",lSts
);
414 lSts
= RegQueryInfoKey(HKEY_CURRENT_USER
,sClass
,&lClass
,0,&lSubKeys
,
415 &lMaxSubLen
,&lMaxClassLen
,&lValues
,&lMaxValNameLen
,
416 &lMaxValLen
,&lSecDescLen
, &ft
);
417 if (lSts
!= ERROR_SUCCESS
) fprintf(stderr
, " 2:%ld\n",lSts
);
420 /******************************************************************************
423 void TestQueryValue()
429 fprintf(stderr
, "Testing RegQueryValue...\n");
430 sVal
= (char *)malloc(80 * sizeof(char));
433 lSts
= RegQueryValue((HKEY
)2,"",NULL
,&lLen
);
434 if (lSts
!= ERROR_INVALID_HANDLE
) fprintf(stderr
, " 1:%ld\n",lSts
);
436 lSts
= RegQueryValue(HKEY_CURRENT_USER
,"",NULL
,&lLen
);
437 if (lSts
!= ERROR_SUCCESS
) fprintf(stderr
, " 2:%ld\n",lSts
);
439 lSts
= RegQueryValue(HKEY_CURRENT_USER
,"\\regtest",NULL
,&lLen
);
440 if (lSts
!= ERROR_BAD_PATHNAME
) fprintf(stderr
, " 3:%ld\n",lSts
);
442 lSts
= RegQueryValue(HKEY_CURRENT_USER
,"",sVal
,&lLen
);
443 if (lSts
!= ERROR_SUCCESS
) fprintf(stderr
, " 4:%ld\n",lSts
);
446 /******************************************************************************
449 void TestQueryValueEx()
456 fprintf(stderr
, "Testing RegQueryValueEx...\n");
458 sVal
= (char *)malloc(lLen
* sizeof(char));
460 lSts
= RegQueryValueEx((HKEY
)2,"",0,&lType
,sVal
,&lLen
);
461 if (lSts
!= ERROR_INVALID_HANDLE
) fprintf(stderr
, " 1:%ld\n",lSts
);
463 lSts
= RegQueryValueEx(HKEY_CURRENT_USER
,"",(LPDWORD
)1,&lType
,sVal
,&lLen
);
464 if (lSts
!= ERROR_INVALID_PARAMETER
) fprintf(stderr
, " 2:%ld\n",lSts
);
466 lSts
= RegQueryValueEx(HKEY_LOCAL_MACHINE
,"",0,&lType
,sVal
,&lLen
);
467 if (lSts
!= ERROR_SUCCESS
) fprintf(stderr
, " 3:%ld\n",lSts
);
470 /******************************************************************************
473 void TestReplaceKey()
477 fprintf(stderr
, "Testing RegReplaceKey...\n");
479 lSts
= RegReplaceKey((HKEY
)2,"","","");
480 if (lSts
!= ERROR_INVALID_HANDLE
) fprintf(stderr
, " 1:%ld\n",lSts
);
483 lSts
= RegReplaceKey(HKEY_LOCAL_MACHINE
,"","","");
484 if (lSts
!= ERROR_ACCESS_DENIED
) fprintf(stderr
, " 2:%ld\n",lSts
);
486 lSts
= RegReplaceKey(HKEY_LOCAL_MACHINE
,"Software","","");
487 if (lSts
!= ERROR_ACCESS_DENIED
) fprintf(stderr
, " 3:%ld\n",lSts
);
491 /******************************************************************************
494 void TestRestoreKey()
497 fprintf(stderr
, "Testing RegRestoreKey...\n");
499 lSts
= RegRestoreKey((HKEY
)2,"",0);
500 if (lSts
!= ERROR_INVALID_PARAMETER
) fprintf(stderr
, " 1:%ld\n",lSts
);
502 lSts
= RegRestoreKey(HKEY_LOCAL_MACHINE
,"",0);
503 if (lSts
!= ERROR_INVALID_PARAMETER
) fprintf(stderr
, " 2:%ld\n",lSts
);
505 lSts
= RegRestoreKey(HKEY_LOCAL_MACHINE
,"a.a",0);
506 if (lSts
!= ERROR_FILE_NOT_FOUND
) fprintf(stderr
, " 3:%ld\n",lSts
);
509 /******************************************************************************
515 fprintf(stderr
, "Testing RegSaveKey...\n");
517 lSts
= RegSaveKey((HKEY
)2,"",NULL
);
518 if (lSts
!= ERROR_INVALID_PARAMETER
) fprintf(stderr
, " 1:%ld\n",lSts
);
520 lSts
= RegSaveKey(HKEY_LOCAL_MACHINE
,"",NULL
);
521 if (lSts
!= ERROR_INVALID_PARAMETER
) fprintf(stderr
, " 2:%ld\n",lSts
);
524 lSts
= RegSaveKey(HKEY_LOCAL_MACHINE
,"a.a",NULL
);
525 if (lSts
!= ERROR_PRIVILEGE_NOT_HELD
) fprintf(stderr
, " 3:%ld\n",lSts
);
529 /******************************************************************************
532 void TestSetKeySecurity()
535 SECURITY_DESCRIPTOR sd
;
536 fprintf(stderr
, "Testing RegSetKeySecurity...\n");
538 lSts
= RegSetKeySecurity((HKEY
)2,0,NULL
);
539 if (lSts
!= ERROR_INVALID_PARAMETER
) fprintf(stderr
, " 1:%ld\n",lSts
);
541 lSts
= RegSetKeySecurity(HKEY_LOCAL_MACHINE
,0,NULL
);
542 if (lSts
!= ERROR_INVALID_PARAMETER
) fprintf(stderr
, " 2:%ld\n",lSts
);
544 lSts
= RegSetKeySecurity(HKEY_LOCAL_MACHINE
,OWNER_SECURITY_INFORMATION
,NULL
);
545 if (lSts
!= ERROR_INVALID_PARAMETER
) fprintf(stderr
, " 3:%ld\n",lSts
);
547 lSts
= RegSetKeySecurity(HKEY_LOCAL_MACHINE
,OWNER_SECURITY_INFORMATION
,&sd
);
548 if (lSts
!= ERROR_INVALID_PARAMETER
) fprintf(stderr
, " 4:%ld\n",lSts
);
551 /******************************************************************************
557 fprintf(stderr
, "Testing RegSetValue...\n");
560 lSts
= RegSetValue((HKEY
)2,"",0,NULL
,0);
561 if (lSts
!= ERROR_INVALID_PARAMETER
) fprintf(stderr
, " 1:%ld\n",lSts
);
565 lSts
= RegSetValue((HKEY
)2,"regtest",0,NULL
,0);
566 if (lSts
!= ERROR_INVALID_PARAMETER
) fprintf(stderr
, " 2:%ld\n",lSts
);
570 lSts
= RegSetValue((HKEY
)2,"regtest",REG_SZ
,NULL
,0);
571 if (lSts
!= ERROR_INVALID_HANDLE
) fprintf(stderr
, " 3:%ld\n",lSts
);
575 lSts
= RegSetValue(HKEY_LOCAL_MACHINE
,"regtest",REG_SZ
,NULL
,0);
576 if (lSts
!= ERROR_INVALID_HANDLE
) fprintf(stderr
, " 4:%ld\n",lSts
);
580 /******************************************************************************
583 void TestSetValueEx()
586 fprintf(stderr
, "Testing RegSetValueEx...\n");
588 lSts
= RegSetValueEx((HKEY
)2,"",0,0,NULL
,0);
589 if (lSts
!= ERROR_INVALID_HANDLE
) fprintf(stderr
, " 1:%ld\n",lSts
);
591 lSts
= RegSetValueEx(HKEY_LOCAL_MACHINE
,"",0,0,NULL
,0);
592 if (lSts
!= ERROR_SUCCESS
) fprintf(stderr
, " 2:%ld\n",lSts
);
595 /******************************************************************************
601 fprintf(stderr
, "Testing RegUnloadKey...\n");
604 lSts
= RegUnLoadKey((HKEY
)2,"");
605 if (lSts
!= ERROR_PRIVILEGE_NOT_HELD
) fprintf(stderr
, " 1:%ld\n",lSts
);
607 lSts
= RegUnLoadKey(HKEY_LOCAL_MACHINE
,"");
608 if (lSts
!= ERROR_PRIVILEGE_NOT_HELD
) fprintf(stderr
, " 2:%ld\n",lSts
);
610 lSts
= RegUnLoadKey(HKEY_LOCAL_MACHINE
,"\\regtest");
611 if (lSts
!= ERROR_PRIVILEGE_NOT_HELD
) fprintf(stderr
, " 3:%ld\n",lSts
);
615 /******************************************************************************
623 fprintf(stderr
, "Testing Sequence1...\n");
625 lSts
= RegCreateKey(HKEY_CURRENT_USER
,"regtest",&hkey
);
626 if (lSts
!= ERROR_SUCCESS
) fprintf(stderr
, " 1:%ld\n",lSts
);
628 fprintf(stderr
, " hkey=0x%x\n", hkey
);
630 lSts
= RegDeleteKey(HKEY_CURRENT_USER
, "regtest");
631 if (lSts
!= ERROR_SUCCESS
) fprintf(stderr
, " 2:%ld\n",lSts
);
632 lSts
= RegCloseKey(hkey
);
633 if (lSts
!= ERROR_SUCCESS
) fprintf(stderr
, " 3:%ld\n",lSts
);
637 int PASCAL
WinMain (HANDLE inst
, HANDLE prev
, LPSTR cmdline
, int show
)
640 /* These can be in any order */
642 TestConnectRegistry();
651 TestGetKeySecurity();
653 TestNotifyChangeKeyValue();
662 TestSetKeySecurity();
667 /* Now we have some sequence testing */