1 {******************************************************************************} 2 { } 3 { Profile Info Structures API interface Unit for Object Pascal } 4 { } 5 { Portions created by Microsoft are Copyright (C) 1995-2001 Microsoft } 6 { Corporation. All Rights Reserved. } 7 { } 8 { The original file is: profinfo.h, released June 2000. The original Pascal } 9 { code is: ProfInfo.pas, released December 2000. The initial developer of the } 10 { Pascal code is Marcel van Brakel (brakelm att chello dott nl). } 11 { } 12 { Portions created by Marcel van Brakel are Copyright (C) 1999-2001 } 13 { Marcel van Brakel. All Rights Reserved. } 14 { } 15 { Obtained through: Joint Endeavour of Delphi Innovators (Project JEDI) } 16 { } 17 { You may retrieve the latest version of this file at the Project JEDI } 18 { APILIB home page, located at http://jedi-apilib.sourceforge.net } 19 { } 20 { The contents of this file are used with permission, subject to the Mozilla } 21 { Public License Version 1.1 (the "License"); you may not use this file except } 22 { in compliance with the License. You may obtain a copy of the License at } 23 { http://www.mozilla.org/MPL/MPL-1.1.html } 24 { } 25 { Software distributed under the License is distributed on an "AS IS" basis, } 26 { WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for } 27 { the specific language governing rights and limitations under the License. } 28 { } 29 { Alternatively, the contents of this file may be used under the terms of the } 30 { GNU Lesser General Public License (the "LGPL License"), in which case the } 31 { provisions of the LGPL License are applicable instead of those above. } 32 { If you wish to allow use of your version of this file only under the terms } 33 { of the LGPL License and not to allow others to use your version of this file } 34 { under the MPL, indicate your decision by deleting the provisions above and } 35 { replace them with the notice and other provisions required by the LGPL } 36 { License. If you do not delete the provisions above, a recipient may use } 37 { your version of this file under either the MPL or the LGPL License. } 38 { } 39 { For more information about the LGPL: http://www.gnu.org/copyleft/lesser.html } 40 { } 41 {******************************************************************************} 42 43 // $Id: JwaProfInfo.pas,v 1.8 2007/09/05 11:58:52 dezipaitor Exp $ 44 {$IFNDEF JWA_OMIT_SECTIONS} 45 unit JwaProfInfo; 46 47 {$WEAKPACKAGEUNIT} 48 {$ENDIF JWA_OMIT_SECTIONS} 49 50 {$HPPEMIT ''} 51 {$HPPEMIT '#include "profinfo.h"'} 52 {$HPPEMIT ''} 53 54 {$IFNDEF JWA_OMIT_SECTIONS} 55 {$I jediapilib.inc} 56 57 interface 58 59 uses 60 JwaWinType; 61 {$ENDIF JWA_OMIT_SECTIONS} 62 63 {$IFNDEF JWA_IMPLEMENTATIONSECTION} 64 65 type 66 LPPROFILEINFOA = ^PROFILEINFOA; 67 {$EXTERNALSYM LPPROFILEINFOA} 68 _PROFILEINFOA = record 69 dwSize: DWORD; // Set to sizeof(PROFILEINFO) before calling 70 dwFlags: DWORD; // See flags above 71 lpUserName: LPSTR; // User name (required) 72 lpProfilePath: LPSTR; // Roaming profile path (optional, can be NULL) 73 lpDefaultPath: LPSTR; // Default user profile path (optional, can be NULL) 74 lpServerName: LPSTR; // Validating domain controller name in netbios format (optional, can be NULL but group NT4 style policy won't be applied) 75 lpPolicyPath: LPSTR; // Path to the NT4 style policy file (optional, can be NULL) 76 hProfile: HANDLE; // Filled in by the function. Registry key handle open to the root. 77 end; 78 {$EXTERNALSYM _PROFILEINFOA} 79 PROFILEINFOA = _PROFILEINFOA; 80 {$EXTERNALSYM PROFILEINFOA} 81 TProfileInfoA = PROFILEINFOA; 82 PProfileInfoA = LPPROFILEINFOA; 83 84 LPPROFILEINFOW = ^PROFILEINFOW; 85 {$EXTERNALSYM LPPROFILEINFOW} 86 _PROFILEINFOW = record 87 dwSize: DWORD; // Set to sizeof(PROFILEINFO) before calling 88 dwFlags: DWORD; // See flags above 89 lpUserName: LPWSTR; // User name (required) 90 lpProfilePath: LPWSTR; // Roaming profile path (optional, can be NULL) 91 lpDefaultPath: LPWSTR; // Default user profile path (optional, can be NULL) 92 lpServerName: LPWSTR; // Validating domain controller name in netbios format (optional, can be NULL but group NT4 style policy won't be applied) 93 lpPolicyPath: LPWSTR; // Path to the NT4 style policy file (optional, can be NULL) 94 hProfile: HANDLE; // Filled in by the function. Registry key handle open to the root. 95 end; 96 {$EXTERNALSYM _PROFILEINFOW} 97 PROFILEINFOW = _PROFILEINFOW; 98 {$EXTERNALSYM PROFILEINFOW} 99 TProfileInfoW = PROFILEINFOW; 100 PProfileInfoW = LPPROFILEINFOW; 101 102 {$IFDEF UNICODE} 103 PROFILEINFO = PROFILEINFOW; 104 {$EXTERNALSYM PROFILEINFO} 105 LPPROFILEINFO = LPPROFILEINFOW; 106 {$EXTERNALSYM LPPROFILEINFO} 107 TProfileInfo = TProfileInfoW; 108 PProfileInfo = PProfileInfoW; 109 {$ELSE} 110 PROFILEINFO = PROFILEINFOA; 111 {$EXTERNALSYM PROFILEINFO} 112 LPPROFILEINFO = LPPROFILEINFOA; 113 {$EXTERNALSYM LPPROFILEINFO} 114 TProfileInfo = TProfileInfoA; 115 PProfileInfo = PProfileInfoA; 116 {$ENDIF UNICODE} 117 118 {$ENDIF JWA_IMPLEMENTATIONSECTION} 119 120 121 122 {$IFNDEF JWA_OMIT_SECTIONS} 123 implementation 124 //uses ... 125 {$ENDIF JWA_OMIT_SECTIONS} 126 127 128 129 130 {$IFNDEF JWA_INTERFACESECTION} 131 //your implementation here 132 {$ENDIF JWA_INTERFACESECTION} 133 134 135 {$IFNDEF JWA_OMIT_SECTIONS} 136 end. 137 {$ENDIF JWA_OMIT_SECTIONS} 138