This one is generally straightforward. Either the object you specified actually does not exist or the current user's security context does not have rights to see it.
If it is the former, you might want to refer again to the sections in Chapter 3 about binding string syntaxes. It may also be appropriate to refer to Chapter 4 for information on searching the directory if we know some information about the object in question (such as its name) but do not know where it is located.
For security-related issues, the first section of Chapter 8 is essential for helping you understand LDAP security. In some cases, you may need a more privileged account to access the object in question, but in other cases, you may have simply established your security context incorrectly.
Part I: Fundamentals
Introduction to LDAP and Active Directory
Introduction to .NET Directory Services Programming
Binding and CRUD Operations with DirectoryEntry
Searching with the DirectorySearcher
Advanced LDAP Searches
Reading and Writing LDAP Attributes
Active Directory and ADAM Schema
Security in Directory Services Programming
Introduction to the ActiveDirectory Namespace
Part II: Practical Applications
Part III: Appendixes
Appendix A. Three Approaches to COM Interop with ADSI
Appendix B. LDAP Tools for Programmers
Appendix C. Troubleshooting and Help