Hi Steve,

Cecil can definitely help. All in all in should be pretty straightforward.

Open plugin.dll with Cecil, iterate over all the types, iterate over
all the methods who have a method body, iterate over all the
instructions.

If the instructions takes a field, a class or a method, and if their
scope is api.dll, try to resolve (get the definition in api.dll from a
reference in plugin.dll) them. If it fails, it's using an API that is
not in api.dll

Jb

On Wed, Aug 12, 2015 at 11:00 PM, Steve Baer <[email protected]> wrote:
> We have a plug-in architecture for our application and want to inspect
> plug-ins (assemblies) to see if everything that the plug-in calls in our API
> dll exists. The hope is that we can allow our API dll to change over time,
> but as long as everything that a plug-in uses in this DLL still exists it is
> okay to load the plug-in and execute it.
>
> I have a feeling that cecil can help with figuring this out, but wanted to
> check with you guys first to make sure I'm going down the right path.
>
> Can cecil help make sure that everything in API.DLL used by PLUGIN.DLL still
> exists in the API.DLL that exists on a user's computer? If so, any pointers
> on classes or functions that I should be looking into in cecil?
>
> Thanks,
> -Steve
>
> --
> --
> --
> mono-cecil
> ---
> You received this message because you are subscribed to the Google Groups
> "mono-cecil" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> For more options, visit https://groups.google.com/d/optout.

-- 
-- 
--
mono-cecil
--- 
You received this message because you are subscribed to the Google Groups 
"mono-cecil" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to