plsql-developer-plugin-net icon indicating copy to clipboard operation
plsql-developer-plugin-net copied to clipboard

about win10

Open Gavin-cao opened this issue 7 years ago • 14 comments

hi bro, i tried to complie your project with vs2015, then copy the DemoPluginNet.dll to <PL/SQL Developer home>\plugins. But nothing happened. my envs -- win10 64bit/vs2015 complie with x64/plsql developer 12 is 64bit ok?

Gavin-cao avatar Mar 25 '18 10:03 Gavin-cao

Hi, 64-bit is OK, PL/SQL Dev v12 is also OK - it works. Please, make sure you've changed AnyCPU to x64 before compiling demo plug-in as it is stated on the home page in Building section. Also after building DLL, try validating with dumpbin command, if exports are OK. Instructions are here.

aniskop avatar Mar 25 '18 14:03 aniskop

@aniskop hi aniskop,

  1. i do change AnyCPU to x64 before compiling as you mentioned;
  2. i tried to validate with dumpbin command like your instructions, and results are as follow; although i couldn't see any new plugins were added after dev12 started.

dumpbin result: Microsoft (R) COFF/PE Dumper Version 14.00.24215.1 Copyright (C) Microsoft Corporation. All rights reserved.

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

File Type: DLL

Section contains the following exports for \DemoPluginNet.dll

00000000 characteristics
5AB7B667 time date stamp Sun Mar 25 22:47:03 2018
    0.00 version
       0 ordinal base
       5 number of functions
       5 number of names

ordinal hint RVA      name

      4    0 000034F2 About
      3    1 000034E6 CreateMenuItem
      0    2 000034C2 IdentifyPlugIn
      2    3 000034DA OnMenuClick
      1    4 000034CE RegisterCallback

Summary

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

Gavin-cao avatar Mar 25 '18 15:03 Gavin-cao

So, it seams exports are OK and Developer should see the plug-in. You can check, if Developer loaded dll by trying to delete the dll while Developer is running. If deletion is not allowed then Developer uses it - this is the expected result.

What do you mean by saying "nothing happened"? The plug-in should create menu item under Tools menu, but in PL/SQL Dev 12 menu is little bit different. If you use ribbon UI in Developer (which is default), take a look at plug-ins tab - maybe plug-in is there? You can try to modify the plug-in source to create menu item under different menu, for instance, View. Also you can try to switch to old style (Preferences > Appearance, then at the bottom of dialog there is a button to switch).

For now I can't tell the reason and the solution for you case - I need a try. I will do that this week. However I can tell you for sure - on Win7 64bit, PL/SQL Dev 10 (32bit) and 12 (64bit) my other plug-ins work fine. I'll try the demo plug-in and let you know.

aniskop avatar Mar 25 '18 16:03 aniskop

@aniskop

The plug-in should create menu item under Tools menu, but in PL/SQL Dev 12 menu is little bit different. If you use ribbon UI in Developer (which is default), take a look at plug-ins tab - maybe plug-in is there?

i used the plug-manager of pl/sql dev 12, and there were only 3 plugins -- Active Query Builder, plsqldoc and red gate. there's a detail maybe useful, when i tried to compiled the project with vs2015, it told me that vs can not compiled the project without "windows 10 SDK", and the project builded successfully when it was installed . so maybe win10 is the problem.

Gavin-cao avatar Mar 26 '18 08:03 Gavin-cao

@shineech , so after installing Windows 10 SDK demo plug-in is recognized by PL/SQL Developer and works? If yes, the I think this is related to Windows 10. According Windows 10 SDK page it comes automatically with VS2017. So maybe if you use VS2017 on Windows 10 everything will be OK. I definitely need some experimenting with Windows 10 and VS2015 and 2017. I will publish my findings and close the issue after experimenting.

aniskop avatar Mar 26 '18 08:03 aniskop

@aniskop

so after installing Windows 10 SDK demo plug-in is recognized by PL/SQL Developer and works?

no, i mean after installing Windows 10 SDK the project could be compiled successful, but still could not find in plugin-manager.

So maybe if you use VS2017 on Windows 10 everything will be OK

it was a long story (T﹏T).... i tried compiled the project with vs2017 at the very beginning, but the default .net framework is 4.6.1. when i tried to change the target framework to 4.5.2, vs2017 do not have the suitable compiler, finally i downloaded vs2015 and compiled successfully with it.

now maybe i should find a win7 64bit desktop and try again.

Gavin-cao avatar Mar 26 '18 08:03 Gavin-cao

@shineech Apologise for very long delay. I did not forget the issue. Just having problems running Windows 10 (bot virtual and physical) machine on my PC which I suppose is rather old and slow. First because of old and slow HDD (solved), now because of slow PC :) Still trying. Stay tuned. If you find the solution, please share so I can publish it on the home page.

aniskop avatar Apr 11 '18 16:04 aniskop

@shineech hi, can you share you code I will try.

kashcode avatar Aug 31 '18 15:08 kashcode

Any news to this? I have the same problem, using Win7 x64 here

Eternal-Infinity avatar Jul 03 '19 12:07 Eternal-Infinity

@Eternal-Infinity , sadly nope :( I did nothing on the project for a while and the situation will stay the same for some time (hopefuly in the autumn I'll be back on the project). I can suggest to refer to the fork https://github.com/Mikefox2k/plsql-developer-plugin-net, which mentions MS build tools, or see other forks - maybe they have some info and can help. Anyway, if you find a solution, please share with me so I publish it and other people know, what to do about this. Thank you.

aniskop avatar Jul 03 '19 16:07 aniskop

@aniskop , the problem is, it works on Win7 x64 and Pl/Sql developer version 13 x64, but not on version 12 x64.

Maybe the problem in our project is the x64 conversion of the exported functions. pastebin

Mikefox2k avatar Jul 04 '19 05:07 Mikefox2k

@Mikefox2k , that's a good clue. maybe you should try different dll exporter insted of Robert Gesecke unmanaged exports. For instance, this fork uses DllExport.

aniskop avatar Jul 04 '19 05:07 aniskop

I'll try that, wish me luck =)

Mikefox2k avatar Jul 04 '19 06:07 Mikefox2k

@aniskop So, I've tried this and the problem still exists, version 13 still working as expected and version 12: nothing. =(

Mikefox2k avatar Jul 04 '19 06:07 Mikefox2k