5 Replies Latest reply on Aug 13, 2017 12:48 AM by sameeullahqazi

    Cannot debug Sample Plug-in - Exception thrown: read access violation

    sameeullahqazi Level 1

      Hi,

       

      I'm trying to debug the sample HelloWorld plug-in as explained under the "Create a Windows Plug-in" section the "Getting Started Guide". I successfully built the plug-in using the x86 configuration and copied it over to the Adobe Plug-ins folder. Now, when I run Debug, I get a Read Access Violation error. Below is a step-wise illustration:

       

      debug1.PNG

      1. The if statement at line 21 initially gives back false, probably since kSPInterfaceCaller is undefined or empty. debug2.PNG
      2. The end if is reached and gives the above message: "Illustrator.pdb not loaded".debug3.PNG
      3. The if condition executes once more and this time returns true. However, the sAIUnicodeString variable still holds NULL, perhaps because sSPBasic->AcquireSuite() failed. debug4.PNG
      4. Since sAIUnicodeString is NULL, a Read Access Violation is thrown.

       

      Can you please identify the cause of this issue. I haven't changed anything in the code and am using VS 2017 on a Windows 10 VirtualBox.

       

      Thank you,

      Samee.

        • 1. Re: Cannot debug Sample Plug-in - Exception thrown: read access violation
          A. Patterson Level 4
          1. The entry point is called many, many times over the life of a plugin depending on how complex the plugin is. I very much doubt kSPInterfaceCaller is empty or undefined because it's a constant defined in the SDK. Most likely, caller is something else. You should be able to see it's value in the debugger (You should use the Autos window BTW, so you don't have to type out the variables to watch every time).
          2. That's because you don't have a PDB for Illustrator; i.e., you didn't build it, so you can't see inside any of the SDK calls.
          3. You're probably correct on this count. To verify, what is the error variable's value after it attempts the AcquireSuite call for sAIUnicodeString?

           

          If the value is zero, it's claiming it worked, but we both know that's probably not what you'll find. The value may point to the reason, as the code can be very illuminating, if we're lucky.

          1 person found this helpful
          • 2. Re: Cannot debug Sample Plug-in - Exception thrown: read access violation
            sameeullahqazi Level 1

            The error number returned is 1394689636 for these 2 calls:

            error = sSPBasic->AcquireSuite(kAIUserSuite, kAIUserSuiteVersion, (const void**)

            &sAIUser);

            error = sSPBasic->AcquireSuite(kAIUnicodeStringSuite, kAIUnicodeStringSuiteVersion, (const

            void**)&sAIUnicodeString);

             

            and 0 for this call:

            error = sSPBasic->AcquireSuite(kSPBlocksSuite, kSPBlocksSuiteVersion, (const void**)

            &sSPBlocks);

             

            which make sense since both sAIUser and sAIUnicodeString hold null after the call, whereas sSPBlocks holds a non-null value. So regarding the above error, I found this thread:

            AICSXSExtensionSuite error 1394689636

            I'm using Adobe Illustrator version 16.0.0 (both 32 and 64 bit). Could this version be the cause, if so is there a workaround?

             

            Thanks.

            • 3. Re: Cannot debug Sample Plug-in - Exception thrown: read access violation
              A. Patterson Level 4

              Okay, so 1394689636 is 0x53214664 which is 0x53 0x21 0x46 0x64, which on an ASCII table is 'S!Fd'.

               

              From that I'd conclude with a fair bit of certainty that you're using the wrong SDK for that version of Illustrator. Illustrator ships suites of functions, and my guess is kUnicodeStringSuiteVersion & kSPBlocksSuiteVersion are both either too high (more likely) or too low than the one shipped with the Illustrator you're running against.

               

              I have to go home for the weekend now, but if you can't figure it out over the weekend, I'll look in on Monday and see if we can figure out which it is.

              • 4. Re: Cannot debug Sample Plug-in - Exception thrown: read access violation
                A. Patterson Level 4

                Just read the thread you linked (missed it initially) and it concurs with me You're using CS6, but you're probably using the latest SDK (CC 2017). You should find a Version.txt or Readme.txt in the root of the SDK folder, and it should indicate for which version the SDK you're using is for.

                 

                Assuming it's the CC SDK, you need to go get the CS6 SDK from here:

                 

                Adobe Illustrator SDKs | Adobe Developer Connection

                1 person found this helpful
                • 5. Re: Cannot debug Sample Plug-in - Exception thrown: read access violation
                  sameeullahqazi Level 1

                  Yes. I downloaded and installed Adobe Illustrator 2017 32 bit and it's working now. Thank you very much.