Link to home
Start Free TrialLog in
Avatar of RBianca
RBiancaFlag for United States of America

asked on

Trouble with AddFromGuid

Good morning Geniuses!

I'm having a problem with a PDFCreator reference in Access 2003.  

When this application was originally rolled out to the users, PDFCreator was one of the references that was checked (included).  But when the users tried to run the app for the first time, they would wind up with a broken reference.  The only way to correct it was to uncheck the reference on the user's pc, then recheck it and all would be fine.

We tried to correct this by trying to trap for (and correct) broken references.  This was not successful.  We still had to make house calls to uncheck and recheck the reference.

This time around, I unchecked the reference before rolling the app out.  The code I added is supposed to check for the reference and if not found (not checked), it was supposed to add it from the GUID (see code below).  But it also doesn't work.  The reference remains unchecked even though it is not found.  

Since I grabbed the GUID from my own PC during testing, do you think it is not working because the GUID on my user's pc is different?  Or its location is different?  Or version?

I guess I really don't understand how the GUID works...

Thanks in advance for the help!

 
Dim ref As Reference
Dim PDFfound As Boolean

PDFfound = False

For Each ref In References
   If ref.name = "PDFCreator" Then
      PDFfound = True
   End If
Next ref

If Not PDFfound Then
   ReferenceFromGUID ("PDFCreator")
End If

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Function ReferenceFromGUID(strFilename As String) As Boolean 

If strFilename = "PDFCreator" Then
   References.AddFromGuid "{1CE9DC08-9FBC-45C6-8A7C-4FE1E208A613}", 0, 0
   ReferenceFromGUID = True
End If

Exit_ReferenceFromGUID:
   Exit Function

Error_ReferenceFromGUID:
   MsgBox Err & ": " & Err.description
   ReferenceFromGUID = False
   Resume Exit_ReferenceFromGUID
   
End Function

Open in new window

Avatar of Rey Obrero (Capricorn1)
Rey Obrero (Capricorn1)
Flag of United States of America image

try this revision




Function ReferenceFromGUID(strFilename As String) As Boolean 
on error resume next
If strFilename = "PDFCreator" Then
do
   References.AddFromGuid "{1CE9DC08-9FBC-45C6-8A7C-4FE1E208A613}", 0, 0
   ReferenceFromGUID = True
   if err=0 then 
        ReferenceFromGUID=true
        exit do
   end if
loop while false
End If


end function

Open in new window

Avatar of RBianca

ASKER

Hi, Capricorn1.
I will try this and let you know how it goes.  Just so I understand, are you thinking that it is a timing issue?
rb.
ASKER CERTIFIED SOLUTION
Avatar of Rey Obrero (Capricorn1)
Rey Obrero (Capricorn1)
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of RBianca

ASKER

Thank you!  It did the trick!  Now if you could just explain why...?
you were right at the timing issue, so you need to make the codes persistent until you get an error=0 which means that there is no error.