Community
    • 登入

    SQLinForm dll not compatible with the current version o N++

    已排程 已置頂 已鎖定 已移動 Notepad++ & Plugin Development
    28 貼文 5 Posters 6.2k 瀏覽
    正在載入更多貼文
    • 從舊到新
    • 從新到舊
    • 最多點贊
    回覆
    • 在新貼文中回覆
    登入後回覆
    此主題已被刪除。只有擁有主題管理權限的使用者可以查看。
    • EkopalypseE
      Ekopalypse @Guido Thelen
      最後由 Ekopalypse 編輯

      @Guido-Thelen
      last time I played with C# plugin interface there was an
      extra export step at the end. I can’t remember its name.
      Maybe in 2019 it does have to be called slightly different!?

      Guido ThelenG 1 條回覆 最後回覆 回覆 引用 1
      • Guido ThelenG
        Guido Thelen @Ekopalypse
        最後由 編輯

        @Ekopalypse thx. Will check this. Where can I find dumpbin?

        1 條回覆 最後回覆 回覆 引用 1
        • EkopalypseE
          Ekopalypse
          最後由 Ekopalypse 編輯

          should be available from a developer command prompt
          Is part of VS environment.

          Guido ThelenG 1 條回覆 最後回覆 回覆 引用 2
          • Guido ThelenG
            Guido Thelen @Ekopalypse
            最後由 Guido Thelen 編輯

            @Ekopalypse ok. found it. it is strange. the version built with VS2015 does not have the isUniCode function exported, but it works

            Dump of file C:\Users\guido\Documents\SQL\C#SQLinForm\SQLinFormNpp - Kopie (3)\SQLinFormNpp\bin\Release\SQLinFormNpp.dll
            
            File Type: DLL
            
              Summary
            
                    2000 .reloc
                    2000 .rsrc
                    2000 .sdata
                   F6000 .text
            
            C:\Program Files (x86)\Microsoft Visual Studio\2019\Community>
            
            
            

            So, it looks like it is as you wrote: the export is missing

            EkopalypseE zanudZ 2 條回覆 最後回覆 回覆 引用 1
            • EkopalypseE
              Ekopalypse
              最後由 編輯

              that is strange, indeed. How can npp access non-existent function pointers??
              Let me check this again.

              1 條回覆 最後回覆 回覆 引用 0
              • EkopalypseE
                Ekopalypse @Guido Thelen
                最後由 編輯

                @Guido-Thelen If I download the version available from plugin admin I do see the functions exported.

                File Type: DLL
                
                  Section contains the following exports for \SQLinFormNpp64.dll
                
                    00000000 characteristics
                    5DD1422F time date stamp Sun Nov 17 13:50:55 2019
                        0.00 version
                           0 ordinal base
                           6 number of functions
                           6 number of names
                
                    ordinal hint RVA      name
                
                          5    0 000EF2CE beNotified
                          2    1 000EF2AA getFuncsArray
                          4    2 000EF2C2 getName
                          0    3 000EF292 isUnicode
                          3    4 000EF2B6 messageProc
                          1    5 000EF29E setInfo
                
                Guido ThelenG 1 條回覆 最後回覆 回覆 引用 1
                • Guido ThelenG
                  Guido Thelen @Ekopalypse
                  最後由 編輯

                  @Ekopalypse I think I need a break. making too many errors. Thx for today.

                  EkopalypseE 1 條回覆 最後回覆 回覆 引用 3
                  • EkopalypseE
                    Ekopalypse @Guido Thelen
                    最後由 編輯

                    @Guido-Thelen

                    no problem :-D - Good night.

                    Guido ThelenG 1 條回覆 最後回覆 回覆 引用 1
                    • zanudZ
                      zanud @Guido Thelen
                      最後由 編輯

                      @Guido-Thelen

                      the version built with VS2015 does not have the isUniCode function exported, but it works

                      Just in case: have not you forgot about the “/exports” parameter of dumpbin?

                      Guido ThelenG 1 條回覆 最後回覆 回覆 引用 0
                      • Guido ThelenG
                        Guido Thelen @zanud
                        最後由 編輯

                        @zanud exactly. thanks a lot.

                        1 條回覆 最後回覆 回覆 引用 0
                        • Guido ThelenG
                          Guido Thelen @Ekopalypse
                          最後由 編輯

                          @Ekopalypse today I got it working :-) Sleeping was of great help.
                          The issue was that in the refactored version I am working with 2 C# projects. One project for the GUI and one project for the formatter/parser.
                          I refer from the GUI project to the parser project. Because I am only referring to it, the parser dll is not included into the GUI output and Notepad++ issues an error message. The reason is probably that the parser dll cannot be found.
                          But when I copy the source files from the parser project into the GUI project it is better. The GUI dll is of course much bigger and, because it contains now also the parser and Notepad++ is happy.
                          Probably this is an stupid error, but I am not a C# develpper and I am not familiar with Visual Studio. I developped the original parser in Java and transpose the code with a utility into C#.
                          Many Thanks to you :-)

                          EkopalypseE 1 條回覆 最後回覆 回覆 引用 4
                          • EkopalypseE
                            Ekopalypse @Guido Thelen
                            最後由 Ekopalypse 編輯

                            @Guido-Thelen

                            Sleeping was of great help.

                            Yeah, has been the solution to many of my problems as well :-D
                            I’m not a C# developer either, only know VisualBasic.Net a bit.
                            But this reminds me of a problem I had playing with the c# plugin interface.
                            If I remember correctly, the problem was that loading the
                            .Net class didn’t happen at the time npp loaded the plugin.
                            You had to hack the import chain to make it work.
                            Not sure if this is still relevant with a current .Net version either.
                            If I find the code project article (I suspect it was there), I’ll let you know.

                            1 條回覆 最後回覆 回覆 引用 2
                            • rinku singhR
                              rinku singh @Guido Thelen
                              最後由 rinku singh 編輯

                              @Guido-Thelen said in SQLinForm dll not compatible with the current version o N++:

                              @Ekopalypse thanks for your answer.
                              Below is a screenshot of the message.
                              4a759f89-2f84-4778-82c7-35ed6d15bcfa-grafik.png
                              Regards
                              Guido

                              i think you are at windows 10
                              https://github.com/pnedev/nppgtags/pull/28
                              could not get dll for test

                              PeterJonesP 1 條回覆 最後回覆 回覆 引用 0
                              • PeterJonesP
                                PeterJones @rinku singh
                                最後由 PeterJones 編輯

                                @rinku-singh ,

                                What does a PR for NppGTags plugin have to do with the issue at hand? A random link, and the statement “i think you are at windows 10”, doesn’t help anyone understand what you are trying to get across.

                                If you think the NppGTags solution will help @Guido-Thelen solve his problem, you will have to explain how and why you think that.

                                edit: Are you suggesting, like in the issue behind that PR, that @Guido-Thelen should install/update his Visual C++ redistributable 2015-2019 ? /edit

                                1 條回覆 最後回覆 回覆 引用 2
                                • 第一個貼文
                                  最後的貼文
                                The Community of users of the Notepad++ text editor.
                                Powered by NodeBB | Contributors