Community
    • Login

    New Plugin gets 'This ANSI plugin is not compatible with your Unicode Notepad++'

    Scheduled Pinned Locked Moved Notepad++ & Plugin Development
    6 Posts 2 Posters 5.1k Views 2 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • Erwin MarschalkE Offline
      Erwin Marschalk
      last edited by

      I’ve created a sample Plugin derived from NppPluginTemplate. Its compiled with Embarcadero’s C++ Builder as a 32 Bit application and with UNICODE. The function isUnicode() is build and exported from the DLL. But if i start Npp i get the messagebox:

      This ANSI plugin is not compatible with your Unicode Notepad++

      NppPluginDemo.dll is not compatible with the current version of Notepad++

      Npp Debug Info is:

      Notepad++ v7.5.4 (32-bit)
      Build time : Jan 1 2018 - 01:47:45
      Path : C:\Program Files (x86)\Notepad++\notepad++.exe
      Admin mode : OFF
      Local Conf mode : OFF
      OS : Windows 10 (64-bit)
      Plugins : ComparePlugin.dll DSpellCheck.dll mimeTools.dll NppConverter.dll NppExec.dll NppExport.dll NppFTP.dll NPPJSONViewer.dll NppTextFX.dll PluginManager.dll PyNPP.dll PythonScript.dll SourceCookifier.dll

      Claudia FrankC 1 Reply Last reply Reply Quote 1
      • Claudia FrankC Offline
        Claudia Frank @Erwin Marschalk
        last edited by

        @Erwin-Marschalk said:

        isUnicode()

        not only build but returns True?

        Cheers
        Claudia

        1 Reply Last reply Reply Quote 0
        • Erwin MarschalkE Offline
          Erwin Marschalk
          last edited by

          Yes, it returns with

          return TRUE;

          as in the sample.

          Cheers

          Erwin

          Claudia FrankC 1 Reply Last reply Reply Quote 1
          • Claudia FrankC Offline
            Claudia Frank @Erwin Marschalk
            last edited by

            @Erwin-Marschalk

            I don’t know Embarcadero’s C++ but how does it build the dll
            with stdcall or cdecl convention?

            Cheers
            Claudia

            1 Reply Last reply Reply Quote 0
            • Erwin MarschalkE Offline
              Erwin Marschalk
              last edited by

              Claudia,

              the entry is defined as

              extern “C” __declspec(dllexport) BOOL isUnicode()

              but as i checked the dll, its exported with an underscore.

              I’ll check the linker options to remove the underscores.

              Thanks

              Erwin

              1 Reply Last reply Reply Quote 0
              • Erwin MarschalkE Offline
                Erwin Marschalk
                last edited by

                I have it now. I compiled the plugin template without any changes. The only thing was, the C++Builder has a project option ‘C++ Compiler/Output/Create Underscore for Symbolnames’, which is checked by default. It must be unchecked.

                Conclusion, Npp Plugins can also developed with Embarcadero’s C++ Builder.

                Erwin

                1 Reply Last reply Reply Quote 1

                Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                With your input, this post could be even better 💗

                Register Login
                • First post
                  Last post
                The Community of users of the Notepad++ text editor.
                Powered by NodeBB | Contributors