ACC: User-Level Security Wizard Doesn't Add Library ReferencesLast reviewed: October 13, 1997Article ID: Q174342 |
The information in this article applies to:
SYMPTOMSModerate: Requires basic macro, coding, and interoperability skills. When you use the User-Level Security Wizard to secure a database that references libraries other than those included by default, code in the resulting database may not compile correctly. You receive the following error messages:
Compile Error: Variable not defined -or- Compile Error: User-defined type not defined CAUSEThe wizard creates a new default database into which it imports the objects from the unsecured database. References to libraries that existed in the unsecured database are not automatically created in the new secure database.
RESOLUTIONMake sure that the same library references selected in the original, unsecured database are also selected in the new, secured database. To do so, follow these steps:
STATUSMicrosoft has confirmed this to be a problem in the Microsoft products listed at the beginning of this article. We are researching this problem and will post new information here in the Microsoft Knowledge Base as it becomes available.
MORE INFORMATIONWhen Microsoft Access creates a new database, three references are included by default. These references are as follows.
Microsoft Access 7.0
Microsoft Access 97
Steps to Reproduce Problem
1. Open any sample database in Microsoft Access. 2. In the Database window, click the Modules tab. 3. Click New. 4. On the Tools menu, click References. 5. Click to select the Microsoft Office 8.0 Object Library. NOTE: If you are using Microsoft Access 7.0, click to select the Microsoft Office 95 Object Library. 6. Click OK. 7. Type the following code into the module: Function LostReference() ' This function sets the variable X to a constant that is ' defined in the Microsoft Office Object Library. If ' there is no reference to the Microsoft Office Object ' Library, this code generates a compile error. The ' Microsoft Office Object Library is not referenced ' by default. Dim X X = offPropertyTypeDate End Function 8. On the Debug menu, click Compile Loaded Modules. (Note: Use the Run menu in Access 7.0). 9. On the File menu, click Save; then type TestModule in the Module Name box. 10. Close the Module. 11. On the Tools menu, point to Security, and then click User-Level Security Wizard. Follow the instructions provided by the wizard. NOTE: You will receive a warning message if you are logged in as the Admin user: You are currently logged on as the Admin user. If you continue, the database and all objects in it will be unsecured. Do you want to continue? Click Yes; this will not affect this example. 12. Open the newly secured database in Microsoft Access. 13. In the Database window, click the Modules tab. 14. Select TestModule from the Database window and click Design. 15. On the Debug menu, click Compile Loaded Modules. (Note: Use the Run menu in Access 7.0). Note that you receive one of the error messages described in the "Symptoms" section. REFERENCESFor more information about References, search the Help Index for "References, type." For more information about security, search the Help Index for "security, securing a database," or ask the Microsoft Access 97 Office Assistant. For additional information, see the Microsoft Access Security FAQ which is located on the following Microsoft World Wide Web site:
http://support.microsoft.com/support/access/content/secfaq.aspNOTE: Because the Microsoft Web site is constantly updated, the site address may change without notice. If this occurs, link to the Microsoft home page at the following address:
http://www.microsoft.com/ |
Additional query words: prb OFF97
© 1998 Microsoft Corporation. All rights reserved. Terms of Use. |