Skip to content

Validating DLL exports

Pavel Anisko edited this page Mar 23, 2018 · 1 revision

After plug-in project has been built in Visual Studio, there are 2 ways to check, whether it is recognizeable by PL/SQL Developer:

  1. Copy DLL to PL/SQL Developer plug-ins directory, or
  2. Use dumpbin.exe to check exports.

Note: be sure project build platform was set to non-AnyCPU. Otherwise, although DLL will be created, no functions will be exported.

The first way is the simpliest — copy the DLL to PL/SQL Developer plug-ins directory and restart the IDE. If DLL has been recognized by the IDE, the plug-in name will appear in Plug-In Manager (Tools > Configure Plug-Ins...):

Plugin Manager

The second way is to use dumpbin.exe utility which comes with Visual Studio and is located in <Visual Studio home>\VC\bin directory. Simply run it in command prompt (on your PC paths may be different):

cd F:\Microsoft Visual Studio 14.0\VC\bin
dumpbin /exports "C:\Program Files\PLSQL Developer\PlugIns\DemoPluginNet.dll"

In the output list of exports you must see all the methods you've decorated with [DllExport]. The output should be like this:

Microsoft (R) COFF/PE Dumper Version 14.00.23506.0
Copyright (C) Microsoft Corporation.  All rights reserved.

Dump of file C:\Program Files\PLSQL Developer\PlugIns\DemoPluginNet.dll

File Type: DLL

  Section contains the following exports for \DemoPluginNet.dll

    00000000 characteristics
    59A8FB3F time date stamp Fri Sep  1 09:16:31 2017
        0.00 version
           0 ordinal base
           5 number of functions
           5 number of names

    ordinal hint RVA      name

          4    0 000035FE About
          3    1 000035EE CreateMenuItem
          0    2 000035BE IdentifyPlugIn
          2    3 000035DE OnMenuClick
          1    4 000035CE RegisterCallback

  Summary

        2000 .reloc
        2000 .rsrc
        2000 .sdata
        2000 .text

Clone this wiki locally