Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

760 lines
23 KiB

  1. // --------------------------------------------------------------------------
  2. // Module Name: glue.cpp
  3. //
  4. // Copyright (c) 2000-2001, Microsoft Corporation
  5. //
  6. // C File containing "glue" functions that the shell depot component of
  7. // msgina uses.
  8. //
  9. // History: 2001-01-03 vtan created
  10. // 2001-01-11 vtan added stub functions for imp library
  11. // --------------------------------------------------------------------------
  12. extern "C"
  13. {
  14. #include "msgina.h"
  15. #include "shtdnp.h"
  16. }
  17. // --------------------------------------------------------------------------
  18. // ::_Gina_SasNotify
  19. //
  20. // Arguments: pWlxContext = PGLOBALS struct.
  21. // dwSASType = SAS type.
  22. //
  23. // Returns: <none>
  24. //
  25. // Purpose: Notifies winlogon of a generated SAS.
  26. //
  27. // History: 2001-01-11 vtan created
  28. // --------------------------------------------------------------------------
  29. EXTERN_C void _Gina_SasNotify (void *pWlxContext, DWORD dwSASType)
  30. {
  31. pWlxFuncs->WlxSasNotify(static_cast<PGLOBALS>(pWlxContext)->hGlobalWlx, dwSASType);
  32. }
  33. // --------------------------------------------------------------------------
  34. // ::_Gina_SetTimeout
  35. //
  36. // Arguments: pWlxContext = PGLOBALS struct.
  37. // dwTimeout = Timeout value.
  38. //
  39. // Returns: BOOL
  40. //
  41. // Purpose: Sets the internal msgina timeout value for dialogs.
  42. //
  43. // History: 2001-01-03 vtan created
  44. // --------------------------------------------------------------------------
  45. EXTERN_C BOOL _Gina_SetTimeout (void *pWlxContext, DWORD dwTimeout)
  46. {
  47. return(pWlxFuncs->WlxSetTimeout(static_cast<PGLOBALS>(pWlxContext)->hGlobalWlx, dwTimeout));
  48. }
  49. // --------------------------------------------------------------------------
  50. // ::_Gina_DialogBoxParam
  51. //
  52. // Arguments: pWlxContext = PGLOBALS struct.
  53. // See the platform SDK under DialogBoxParam.
  54. //
  55. // Returns: See the platform SDK under DialogBoxParam.
  56. //
  57. // Purpose: Calls winlogon's implementation of DialogBoxParam.
  58. //
  59. // History: 2001-01-03 vtan created
  60. // --------------------------------------------------------------------------
  61. EXTERN_C INT_PTR _Gina_DialogBoxParam (void *pWlxContext, HINSTANCE hInstance, LPCWSTR pszTemplate, HWND hwndParent, DLGPROC pfnDlgProc, LPARAM lParam)
  62. {
  63. return(pWlxFuncs->WlxDialogBoxParam(static_cast<PGLOBALS>(pWlxContext)->hGlobalWlx,
  64. hInstance,
  65. const_cast<LPWSTR>(pszTemplate),
  66. hwndParent,
  67. pfnDlgProc,
  68. lParam));
  69. }
  70. // --------------------------------------------------------------------------
  71. // ::_Gina_MessageBox
  72. //
  73. // Arguments: pWlxContext = PGLOBALS struct.
  74. // See the platform SDK under MessageBox.
  75. //
  76. // Returns: See the platform SDK under MessageBox.
  77. //
  78. // Purpose: Calls winlogon's implementation of MessageBox.
  79. //
  80. // History: 2001-03-02 vtan created
  81. // --------------------------------------------------------------------------
  82. EXTERN_C INT_PTR _Gina_MessageBox (void *pWlxContext, HWND hwnd, LPCWSTR pszText, LPCWSTR pszCaption, UINT uiType)
  83. {
  84. return(pWlxFuncs->WlxMessageBox(static_cast<PGLOBALS>(pWlxContext)->hGlobalWlx,
  85. hwnd,
  86. const_cast<LPWSTR>(pszText),
  87. const_cast<LPWSTR>(pszCaption),
  88. uiType));
  89. }
  90. // --------------------------------------------------------------------------
  91. // ::_Gina_SwitchDesktopToUser
  92. //
  93. // Arguments: pWlxContext = PGLOBALS struct.
  94. //
  95. // Returns: int
  96. //
  97. // Purpose: Calls winlogon's implementation for SwitchDesktopToUser.
  98. //
  99. // History: 2001-01-03 vtan created
  100. // --------------------------------------------------------------------------
  101. EXTERN_C int _Gina_SwitchDesktopToUser (void *pWlxContext)
  102. {
  103. return(pWlxFuncs->WlxSwitchDesktopToUser(static_cast<PGLOBALS>(pWlxContext)->hGlobalWlx));
  104. }
  105. // --------------------------------------------------------------------------
  106. // ::_Gina_ShutdownDialog
  107. //
  108. // Arguments: pWlxContext = PGLOBALS struct.
  109. // hwndParent = Parent HWND for dialog.
  110. // dwExcludeItems = Items to exclude from dialog.
  111. //
  112. // Returns: INT_PTR
  113. //
  114. // Purpose: Displays the shutdown that is hosted from winlogon not
  115. // explorer.
  116. //
  117. // History: 2001-01-03 vtan created
  118. // --------------------------------------------------------------------------
  119. EXTERN_C INT_PTR _Gina_ShutdownDialog (void *pWlxContext, HWND hwndParent, DWORD dwExcludeItems)
  120. {
  121. return(static_cast<DWORD>(WinlogonShutdownDialog(hwndParent, static_cast<PGLOBALS>(pWlxContext), dwExcludeItems)));
  122. }
  123. // --------------------------------------------------------------------------
  124. // ::_Gina_GetUserToken
  125. //
  126. // Arguments: pWlxContext = PGLOBALS struct.
  127. //
  128. // Returns: HANDLE
  129. //
  130. // Purpose: Returns the user token handle. This handle must not be closed.
  131. //
  132. // History: 2001-01-03 vtan created
  133. // --------------------------------------------------------------------------
  134. EXTERN_C HANDLE _Gina_GetUserToken (void *pWlxContext)
  135. {
  136. return(static_cast<PGLOBALS>(pWlxContext)->UserProcessData.UserToken);
  137. }
  138. // --------------------------------------------------------------------------
  139. // ::_Gina_GetUsername
  140. //
  141. // Arguments: pWlxContext = PGLOBALS struct.
  142. //
  143. // Returns: const WCHAR*
  144. //
  145. // Purpose: Returns the user name. Read only string.
  146. //
  147. // History: 2001-03-28 vtan created
  148. // --------------------------------------------------------------------------
  149. EXTERN_C const WCHAR* _Gina_GetUsername (void *pWlxContext)
  150. {
  151. return(static_cast<PGLOBALS>(pWlxContext)->UserName);
  152. }
  153. // --------------------------------------------------------------------------
  154. // ::_Gina_GetDomain
  155. //
  156. // Arguments: pWlxContext = PGLOBALS struct.
  157. //
  158. // Returns: const WCHAR*
  159. //
  160. // Purpose: Returns the domain. Read only string.
  161. //
  162. // History: 2001-03-28 vtan created
  163. // --------------------------------------------------------------------------
  164. EXTERN_C const WCHAR* _Gina_GetDomain (void *pWlxContext)
  165. {
  166. return(static_cast<PGLOBALS>(pWlxContext)->Domain);
  167. }
  168. // --------------------------------------------------------------------------
  169. // ::_Gina_SetTextFields
  170. //
  171. // Arguments: hwndDialog = HWND of the dialog.
  172. // pwszUsername = Username to set.
  173. // pwszDomain = Domain to set.
  174. // pwszPassword = Password to set.
  175. //
  176. // Returns: <none>
  177. //
  178. // Purpose: Sets the values of the msgina logon dialog to the given
  179. // values. This allows pass thru of credentials from the UI host
  180. // to msgina to do the work.
  181. //
  182. // History: 2001-01-03 vtan created
  183. // --------------------------------------------------------------------------
  184. EXTERN_C void _Gina_SetTextFields (HWND hwndDialog, const WCHAR *pwszUsername, const WCHAR *pwszDomain, const WCHAR *pwszPassword)
  185. {
  186. WCHAR szDomain[DNLEN + sizeof('\0')];
  187. SetDlgItemText(hwndDialog, IDD_LOGON_NAME, pwszUsername);
  188. if ((pwszDomain == NULL) || (pwszDomain[0] == L'\0'))
  189. {
  190. DWORD dwComputerNameSize;
  191. TCHAR szComputerName[CNLEN + sizeof('\0')];
  192. dwComputerNameSize = ARRAYSIZE(szComputerName);
  193. if (GetComputerName(szComputerName, &dwComputerNameSize) != FALSE)
  194. {
  195. lstrcpyn(szDomain, szComputerName, ARRAYSIZE(szDomain));
  196. }
  197. pwszDomain = szDomain;
  198. }
  199. (LRESULT)SendMessage(GetDlgItem(hwndDialog, IDD_LOGON_DOMAIN),
  200. CB_SELECTSTRING,
  201. static_cast<WPARAM>(-1),
  202. reinterpret_cast<LPARAM>(pwszDomain));
  203. SetDlgItemText(hwndDialog, IDD_LOGON_PASSWORD, pwszPassword);
  204. }
  205. // --------------------------------------------------------------------------
  206. // ::_Gina_SetPasswordFocus
  207. //
  208. // Arguments: hwndDialog = HWND of dialog to set password focus.
  209. //
  210. // Returns: BOOL
  211. //
  212. // Purpose: Sets the focus to the password field in the dialog.
  213. //
  214. // History: 2001-01-03 vtan created
  215. // --------------------------------------------------------------------------
  216. EXTERN_C BOOL _Gina_SetPasswordFocus (HWND hwndDialog)
  217. {
  218. return(SetPasswordFocus(hwndDialog));
  219. }
  220. // --------------------------------------------------------------------------
  221. // ::ShellGetUserList
  222. //
  223. // Arguments: See %SDXROOT%\shell\ext\gina\exports.cpp
  224. //
  225. // Returns: See %SDXROOT%\shell\ext\gina\exports.cpp
  226. //
  227. // Purpose: Stub function for export.
  228. //
  229. // History: 2001-01-11 vtan created
  230. // --------------------------------------------------------------------------
  231. EXTERN_C LONG WINAPI ShellGetUserList (BOOL fRemoveGuest, DWORD *pdwUserCount, void* *pUserList)
  232. {
  233. return(_ShellGetUserList(fRemoveGuest, pdwUserCount, pUserList));
  234. }
  235. // --------------------------------------------------------------------------
  236. // ::ShellIsSingleUserNoPassword
  237. //
  238. // Arguments: See %SDXROOT%\shell\ext\gina\exports.cpp
  239. //
  240. // Returns: See %SDXROOT%\shell\ext\gina\exports.cpp
  241. //
  242. // Purpose: Stub function for export.
  243. //
  244. // History: 2001-01-11 vtan created
  245. // --------------------------------------------------------------------------
  246. EXTERN_C BOOL WINAPI ShellIsSingleUserNoPassword (WCHAR *pwszUsername, WCHAR *pwszDomain)
  247. {
  248. return(_ShellIsSingleUserNoPassword(pwszUsername, pwszDomain));
  249. }
  250. // --------------------------------------------------------------------------
  251. // ::ShellIsFriendlyUIActive
  252. //
  253. // Arguments: See %SDXROOT%\shell\ext\gina\exports.cpp
  254. //
  255. // Returns: See %SDXROOT%\shell\ext\gina\exports.cpp
  256. //
  257. // Purpose: Stub function for export.
  258. //
  259. // History: 2001-01-11 vtan created
  260. // --------------------------------------------------------------------------
  261. EXTERN_C BOOL WINAPI ShellIsFriendlyUIActive (void)
  262. {
  263. return(_ShellIsFriendlyUIActive());
  264. }
  265. // --------------------------------------------------------------------------
  266. // ::ShellIsMultipleUsersEnabled
  267. //
  268. // Arguments: See %SDXROOT%\shell\ext\gina\exports.cpp
  269. //
  270. // Returns: See %SDXROOT%\shell\ext\gina\exports.cpp
  271. //
  272. // Purpose: Stub function for export.
  273. //
  274. // History: 2001-01-11 vtan created
  275. // --------------------------------------------------------------------------
  276. EXTERN_C BOOL WINAPI ShellIsMultipleUsersEnabled (void)
  277. {
  278. return(_ShellIsMultipleUsersEnabled());
  279. }
  280. // --------------------------------------------------------------------------
  281. // ::ShellIsRemoteConnectionsEnabled
  282. //
  283. // Arguments: See %SDXROOT%\shell\ext\gina\exports.cpp
  284. //
  285. // Returns: See %SDXROOT%\shell\ext\gina\exports.cpp
  286. //
  287. // Purpose: Stub function for export.
  288. //
  289. // History: 2001-01-11 vtan created
  290. // --------------------------------------------------------------------------
  291. EXTERN_C BOOL WINAPI ShellIsRemoteConnectionsEnabled (void)
  292. {
  293. return(_ShellIsRemoteConnectionsEnabled());
  294. }
  295. // --------------------------------------------------------------------------
  296. // ::ShellEnableFriendlyUI
  297. //
  298. // Arguments: See %SDXROOT%\shell\ext\gina\exports.cpp
  299. //
  300. // Returns: See %SDXROOT%\shell\ext\gina\exports.cpp
  301. //
  302. // Purpose: Stub function for export.
  303. //
  304. // History: 2001-01-11 vtan created
  305. // --------------------------------------------------------------------------
  306. EXTERN_C BOOL WINAPI ShellEnableFriendlyUI (BOOL fEnable)
  307. {
  308. return(_ShellEnableFriendlyUI(fEnable));
  309. }
  310. // --------------------------------------------------------------------------
  311. // ::ShellEnableMultipleUsers
  312. //
  313. // Arguments: See %SDXROOT%\shell\ext\gina\exports.cpp
  314. //
  315. // Returns: See %SDXROOT%\shell\ext\gina\exports.cpp
  316. //
  317. // Purpose: Stub function for export.
  318. //
  319. // History: 2001-01-11 vtan created
  320. // --------------------------------------------------------------------------
  321. EXTERN_C BOOL WINAPI ShellEnableMultipleUsers (BOOL fEnable)
  322. {
  323. return(_ShellEnableMultipleUsers(fEnable));
  324. }
  325. // --------------------------------------------------------------------------
  326. // ::ShellEnableRemoteConnections
  327. //
  328. // Arguments: See %SDXROOT%\shell\ext\gina\exports.cpp
  329. //
  330. // Returns: See %SDXROOT%\shell\ext\gina\exports.cpp
  331. //
  332. // Purpose: Stub function for export.
  333. //
  334. // History: 2001-01-11 vtan created
  335. // --------------------------------------------------------------------------
  336. EXTERN_C BOOL WINAPI ShellEnableRemoteConnections (BOOL fEnable)
  337. {
  338. return(_ShellEnableRemoteConnections(fEnable));
  339. }
  340. // --------------------------------------------------------------------------
  341. // ::ShellTurnOffDialog
  342. //
  343. // Arguments: See %SDXROOT%\shell\ext\gina\exports.cpp
  344. //
  345. // Returns: See %SDXROOT%\shell\ext\gina\exports.cpp
  346. //
  347. // Purpose: Stub function for export.
  348. //
  349. // History: 2001-01-11 vtan created
  350. // --------------------------------------------------------------------------
  351. EXTERN_C DWORD WINAPI ShellTurnOffDialog (HWND hwndParent)
  352. {
  353. return(_ShellTurnOffDialog(hwndParent));
  354. }
  355. // --------------------------------------------------------------------------
  356. // ::ShellACPIPowerButtonPressed
  357. //
  358. // Arguments: See %SDXROOT%\shell\ext\gina\exports.cpp
  359. //
  360. // Returns: See %SDXROOT%\shell\ext\gina\exports.cpp
  361. //
  362. // Purpose: Stub function for export.
  363. //
  364. // History: 2001-01-11 vtan created
  365. // --------------------------------------------------------------------------
  366. EXTERN_C int WINAPI ShellACPIPowerButtonPressed (void *pWlxContext, UINT uiEventType, BOOL fLocked)
  367. {
  368. return(_ShellACPIPowerButtonPressed(pWlxContext, uiEventType, fLocked));
  369. }
  370. // --------------------------------------------------------------------------
  371. // ::ShellIsSuspendAllowed
  372. //
  373. // Arguments: See %SDXROOT%\shell\ext\gina\exports.cpp
  374. //
  375. // Returns: See %SDXROOT%\shell\ext\gina\exports.cpp
  376. //
  377. // Purpose: Stub function for export.
  378. //
  379. // History: 2001-01-11 vtan created
  380. // --------------------------------------------------------------------------
  381. EXTERN_C BOOL WINAPI ShellIsSuspendAllowed (void)
  382. {
  383. return(_ShellIsSuspendAllowed());
  384. }
  385. // --------------------------------------------------------------------------
  386. // ::ShellStatusHostBegin
  387. //
  388. // Arguments: See %SDXROOT%\shell\ext\gina\exports.cpp
  389. //
  390. // Returns: See %SDXROOT%\shell\ext\gina\exports.cpp
  391. //
  392. // Purpose: Stub function for export.
  393. //
  394. // History: 2001-01-11 vtan created
  395. // --------------------------------------------------------------------------
  396. EXTERN_C void WINAPI ShellStatusHostBegin (UINT uiStartType)
  397. {
  398. _ShellStatusHostBegin(uiStartType);
  399. }
  400. // --------------------------------------------------------------------------
  401. // ::ShellStatusHostEnd
  402. //
  403. // Arguments: See %SDXROOT%\shell\ext\gina\exports.cpp
  404. //
  405. // Returns: See %SDXROOT%\shell\ext\gina\exports.cpp
  406. //
  407. // Purpose: Stub function for export.
  408. //
  409. // History: 2001-01-11 vtan created
  410. // --------------------------------------------------------------------------
  411. EXTERN_C void WINAPI ShellStatusHostEnd (UINT uiEndType)
  412. {
  413. _ShellStatusHostEnd(uiEndType);
  414. }
  415. // --------------------------------------------------------------------------
  416. // ::ShellStatusHostShuttingDown
  417. //
  418. // Arguments: See %SDXROOT%\shell\ext\gina\exports.cpp
  419. //
  420. // Returns: See %SDXROOT%\shell\ext\gina\exports.cpp
  421. //
  422. // Purpose: Stub function for export.
  423. //
  424. // History: 2001-01-11 vtan created
  425. // --------------------------------------------------------------------------
  426. EXTERN_C void WINAPI ShellStatusHostShuttingDown (void)
  427. {
  428. _ShellStatusHostShuttingDown();
  429. }
  430. // --------------------------------------------------------------------------
  431. // ::ShellStatusHostPowerEvent
  432. //
  433. // Arguments: See %SDXROOT%\shell\ext\gina\exports.cpp
  434. //
  435. // Returns: See %SDXROOT%\shell\ext\gina\exports.cpp
  436. //
  437. // Purpose: Stub function for export.
  438. //
  439. // History: 2001-01-11 vtan created
  440. // --------------------------------------------------------------------------
  441. EXTERN_C void WINAPI ShellStatusHostPowerEvent (void)
  442. {
  443. _ShellStatusHostPowerEvent();
  444. }
  445. // --------------------------------------------------------------------------
  446. // ::ShellSwitchWhenInteractiveReady
  447. //
  448. // Arguments: See %SDXROOT%\shell\ext\gina\exports.cpp
  449. //
  450. // Returns: See %SDXROOT%\shell\ext\gina\exports.cpp
  451. //
  452. // Purpose: Stub function for export.
  453. //
  454. // History: 2001-01-11 vtan created
  455. // --------------------------------------------------------------------------
  456. EXTERN_C BOOL WINAPI ShellSwitchWhenInteractiveReady (SWITCHTYPE eSwitchType, void *pWlxContext)
  457. {
  458. return(_ShellSwitchWhenInteractiveReady(eSwitchType, pWlxContext));
  459. }
  460. // --------------------------------------------------------------------------
  461. // ::ShellDimScreen
  462. //
  463. // Arguments: See %SDXROOT%\shell\ext\gina\exports.cpp
  464. //
  465. // Returns: See %SDXROOT%\shell\ext\gina\exports.cpp
  466. //
  467. // Purpose: Stub function for export.
  468. //
  469. // History: 2001-01-11 vtan created
  470. // --------------------------------------------------------------------------
  471. EXTERN_C HRESULT WINAPI ShellDimScreen (IUnknown* *ppIUnknown, HWND* phwndDimmed)
  472. {
  473. return(_ShellDimScreen(ppIUnknown, phwndDimmed));
  474. }
  475. // --------------------------------------------------------------------------
  476. // ::ShellInstallAccountFilterData
  477. //
  478. // Arguments: See %SDXROOT%\shell\ext\gina\exports.cpp
  479. //
  480. // Returns: See %SDXROOT%\shell\ext\gina\exports.cpp
  481. //
  482. // Purpose: Stub function for export.
  483. //
  484. // History: 2001-01-11 vtan created
  485. // --------------------------------------------------------------------------
  486. EXTERN_C void WINAPI ShellInstallAccountFilterData (void)
  487. {
  488. _ShellInstallAccountFilterData();
  489. }
  490. // --------------------------------------------------------------------------
  491. // ::ShellSwitchUser
  492. //
  493. // Arguments: See %SDXROOT%\shell\ext\gina\exports.cpp
  494. //
  495. // Returns: See %SDXROOT%\shell\ext\gina\exports.cpp
  496. //
  497. // Purpose: Stub function for export.
  498. //
  499. // History: 2001-01-11 vtan created
  500. // --------------------------------------------------------------------------
  501. EXTERN_C DWORD WINAPI ShellSwitchUser (BOOL fWait)
  502. {
  503. return(_ShellSwitchUser(fWait));
  504. }
  505. // --------------------------------------------------------------------------
  506. // ::ShellIsUserInteractiveLogonAllowed
  507. //
  508. // Arguments: See %SDXROOT%\shell\ext\gina\exports.cpp
  509. //
  510. // Returns: See %SDXROOT%\shell\ext\gina\exports.cpp
  511. //
  512. // Purpose: Stub function for export.
  513. //
  514. // History: 2001-01-11 vtan created
  515. // --------------------------------------------------------------------------
  516. EXTERN_C int WINAPI ShellIsUserInteractiveLogonAllowed (const WCHAR *pwszUsername)
  517. {
  518. return(_ShellIsUserInteractiveLogonAllowed(pwszUsername));
  519. }
  520. // --------------------------------------------------------------------------
  521. // ::ShellNotifyThemeUserChange
  522. //
  523. // Arguments: See %SDXROOT%\shell\ext\gina\exports.cpp
  524. //
  525. // Returns: See %SDXROOT%\shell\ext\gina\exports.cpp
  526. //
  527. // Purpose: Stub function for export.
  528. //
  529. // History: 2001-01-11 vtan created
  530. // --------------------------------------------------------------------------
  531. EXTERN_C void WINAPI ShellNotifyThemeUserChange (USERLOGTYPE eUserLogType, HANDLE hToken)
  532. {
  533. _ShellNotifyThemeUserChange(eUserLogType, hToken);
  534. }
  535. // --------------------------------------------------------------------------
  536. // ::ShellReturnToWelcome
  537. //
  538. // Arguments: See %SDXROOT%\shell\ext\gina\exports.cpp
  539. //
  540. // Returns: See %SDXROOT%\shell\ext\gina\exports.cpp
  541. //
  542. // Purpose: Stub function for export.
  543. //
  544. // History: 2001-01-11 vtan created
  545. // --------------------------------------------------------------------------
  546. EXTERN_C DWORD WINAPI ShellReturnToWelcome (BOOL fUnlock)
  547. {
  548. return(_ShellReturnToWelcome(fUnlock));
  549. }
  550. // --------------------------------------------------------------------------
  551. // ::ShellStartCredentialServer
  552. //
  553. // Arguments: See %SDXROOT%\shell\ext\gina\exports.cpp
  554. //
  555. // Returns: See %SDXROOT%\shell\ext\gina\exports.cpp
  556. //
  557. // Purpose: Stub function for export.
  558. //
  559. // History: 2001-04-03 vtan created
  560. // --------------------------------------------------------------------------
  561. EXTERN_C DWORD WINAPI ShellStartCredentialServer (const WCHAR *pwszUsername, const WCHAR *pwszDomain, WCHAR *pwszPassword, DWORD dwTimeout)
  562. {
  563. return(_ShellStartCredentialServer(pwszUsername, pwszDomain, pwszPassword, dwTimeout));
  564. }
  565. // --------------------------------------------------------------------------
  566. // ::ShellAcquireLogonMutex
  567. //
  568. // Arguments: See %SDXROOT%\shell\ext\gina\exports.cpp
  569. //
  570. // Returns: See %SDXROOT%\shell\ext\gina\exports.cpp
  571. //
  572. // Purpose: Stub function for export.
  573. //
  574. // History: 2001-04-04 vtan created
  575. // --------------------------------------------------------------------------
  576. EXTERN_C void WINAPI ShellAcquireLogonMutex (void)
  577. {
  578. _ShellAcquireLogonMutex();
  579. }
  580. // --------------------------------------------------------------------------
  581. // ::ShellReleaseLogonMutex
  582. //
  583. // Arguments: See %SDXROOT%\shell\ext\gina\exports.cpp
  584. //
  585. // Returns: See %SDXROOT%\shell\ext\gina\exports.cpp
  586. //
  587. // Purpose: Stub function for export.
  588. //
  589. // History: 2001-04-04 vtan created
  590. // --------------------------------------------------------------------------
  591. EXTERN_C void WINAPI ShellReleaseLogonMutex (BOOL fSignalEvent)
  592. {
  593. _ShellReleaseLogonMutex(fSignalEvent);
  594. }
  595. // --------------------------------------------------------------------------
  596. // ::ShellSignalShutdown
  597. //
  598. // Arguments: See %SDXROOT%\shell\ext\gina\exports.cpp
  599. //
  600. // Returns: See %SDXROOT%\shell\ext\gina\exports.cpp
  601. //
  602. // Purpose: Stub function for export.
  603. //
  604. // History: 2001-04-06 vtan created
  605. // --------------------------------------------------------------------------
  606. EXTERN_C void WINAPI ShellSignalShutdown (void)
  607. {
  608. _ShellSignalShutdown();
  609. }
  610. // --------------------------------------------------------------------------
  611. // ::ShellStatusHostHide
  612. //
  613. // Arguments: See %SDXROOT%\shell\ext\gina\exports.cpp
  614. //
  615. // Returns: See %SDXROOT%\shell\ext\gina\exports.cpp
  616. //
  617. // Purpose: Stub function for export.
  618. //
  619. // History: 2001-04-12 vtan created
  620. // --------------------------------------------------------------------------
  621. EXTERN_C void WINAPI ShellStatusHostHide (void)
  622. {
  623. _ShellStatusHostHide();
  624. }
  625. // --------------------------------------------------------------------------
  626. // ::ShellStatusHostShow
  627. //
  628. // Arguments: See %SDXROOT%\shell\ext\gina\exports.cpp
  629. //
  630. // Returns: See %SDXROOT%\shell\ext\gina\exports.cpp
  631. //
  632. // Purpose: Stub function for export.
  633. //
  634. // History: 2001-04-12 vtan created
  635. // --------------------------------------------------------------------------
  636. EXTERN_C void WINAPI ShellStatusHostShow (void)
  637. {
  638. _ShellStatusHostShow();
  639. }