« Previous Next »

Not Answered Thread: Trouble with Linkpoint API in IIS7

Last post 11-09-2009 10:52 AM by sullivandavid. 19 replies.

Average Rating Rate It (5)

RSS

Page 1 of 2 (20 items) 1 2 Next >

Sort Posts:

  • 04-18-2008, 12:34 AM

    • malevolence
    • Not Ranked
    • Joined on 10-03-2005, 7:59 PM
    • Orlando, FL
    • Posts 1

    Trouble with Linkpoint API in IIS7

    I'm migrating several sites from a Windows 2003, IIS6 machine to a Windows 2008, IIS7 machine and have run into a snag that I've been unable to track down. It's the code to communicate with the Linkpoint Gateway and make credit card transactions. I've got a support email into them but thought someone may have run across the issue here. Using code confirmed to work in IIS6 (been working for years, actually but I manually tested it on 3 seperate machines to make sure) causes the web server process to hang. This is what I get in the system log (two times, back to back a second or two apart):

    A process serving application pool 'example.com' terminated unexpectedly. The process id was '1788'. The process exit code was '0xc0000374'.

    There's also a corresponding error in the application log (2x again):

    Faulting application w3wp.exe, version 7.0.6001.18000, time stamp 0x47919413, faulting module ntdll.dll, version 6.0.6001.18000, time stamp 0x4791a7a6, exception code 0xc0000374, fault offset 0x000b015d, process id 0xec0, application start time 0x01c8a10b5544cd86. 

    I've tried using tracing and the Debug Diagnostics tool to track down the error but I can't get either of them to generate a log. Anyone have any idea what could be causing this or what else to try?

  • 04-18-2008, 4:59 AM In reply to

    Re: Trouble with Linkpoint API in IIS7

    What do the IIS website and httperr logs say?

    I presume you are going to a page. What is that page in the logs? Does it occur everytime you goto that page/perform that action.

    Anyway no matter 0xc0000374 implies that it is heap corruption.

    So see here:

    How to debug heap corruption issues in Internet Information Services (IIS): http://support.microsoft.com/kb/300966 

     

     

  • 06-12-2008, 4:20 PM In reply to

    • ave
    • Not Ranked
    • Joined on 06-12-2008, 8:18 PM
    • Posts 2

    Re: Trouble with Linkpoint API in IIS7

    Hi, Were you able to get it to work? We have the same problem and Linkpoint is no help at all. Please let me know. Thank you
  • 06-13-2008, 2:34 PM In reply to

    Re: Trouble with Linkpoint API in IIS7

     Does the above information help?

  • 06-13-2008, 4:59 PM In reply to

    • ave
    • Not Ranked
    • Joined on 06-12-2008, 8:18 PM
    • Posts 2

    Re: Trouble with Linkpoint API in IIS7

    Not sure if it worked for the other person, but the link does not work since I found this post.
  • 12-17-2008, 2:15 AM In reply to

    • riznick
    • Not Ranked
    • Joined on 12-17-2008, 7:07 AM
    • Posts 7

    Re: Trouble with Linkpoint API in IIS7

    I was having the same issue.  The linkpoint object would actually charge the cards.  It seems that the fault occurs after the charge when it is closing the object.

     I contacted linkpoint and they said they would only support .net 1.0.  They assured me that they are working on a new DLL for the latest version of .net. 

    Linkpoint seems to be a joke.  It requires OpenSSL, yet does not provide any information on where to get it, or what version is compatible with their tool.  They also told me that if I want to use Windows 2008, then I should use a gateway that supports windows 2008. 

    My solution was to create a table in the database that stores all the charge information.  My .net page then calls one of my 2003 servers to charge that data and delete the record.  The page then returns approved or declined to the .net page.  I hate having to do it this way, but it actually solves a lot of the linkpoint errors in a short period of time.  I do not wish to keep it set up this way for long, but it works.

  • 02-17-2009, 11:04 AM In reply to

    Re: Trouble with Linkpoint API in IIS7

    Has anyone been able to solve this problem?

  • 03-28-2009, 7:15 PM In reply to

    • jgtech
    • Not Ranked
    • Joined on 10-23-2002, 8:14 PM
    • Posts 1

    Re: Trouble with Linkpoint API in IIS7

     Wow, still no comments that is really unfortunate I just assumed this would work, my site is live and payments are crippled.

  • 04-03-2009, 12:43 AM In reply to

    Re: Trouble with Linkpoint API in IIS7

    I am right there with you.  I wrote some wrappers around the LinkPointTransaction.dll and wrote some components that handle the transactions for me.  My assemblies work fine in my windows test harness app, and they ALSO work in a web service that I wrote when spawned in debug mode (VS 2008 Visual Studio Development Server)!  However, the app always crashes when running in the local IIS web server.

    The call to LinkPointTransaction.LinkPointTxn.Send() seems to send the transaction to FirstData, but my application crashes w3p.exe somewhere after that, before it hits the next line.  It does not throw an exception; it just crashes.

    I am running 64bit Vista Home Premium, but have forced all of my assemblies to x86. I enabled 32bit apps in IIS. I created a separate AppPool just for this web service.  I have tried running the App Pool under my user account with Admin priveledges instead of the Network Service.  I have tried Integrated and Classic modes.   I have explicitly opened the TCP/IP port in my local firewall that the LinkPointTransaction.dll uses to communicate with FirstData.  I have shut my firewall off.  I always get the following crash when running on the local IIS server:

    Faulting application w3wp.exe, version 7.0.6001.18000, time stamp 0x47919413, faulting module ntdll.dll, version 6.0.6001.18000, time stamp 0x4791a783, exception code 0xc0000374, fault offset 0x000aada3, process id 0x990, application start time 0x01c9b4133281d5d0.

    I would keep trying workarounds, but I am out of ideas.  Thoughts are welcome.

  • 04-03-2009, 11:21 AM In reply to

    Re: Trouble with Linkpoint API in IIS7

    Does the failed Request tracing give you any clues?

    The above posted had a heap corruption problem so I suspect the app is doing something wrong and mashing up the heap. If this is the case then the problem is firmly with the app and I don't know what to suggest other than approach the authors of the software.

    Here is another link on Debugging heap corruption but if  you are not the dev there is not much you can do,.

    http://blogs.msdn.com/lagdas/archive/2008/06/24/debugging-heap-corruption-with-application-verifier-and-debugdiag.aspx

  • 04-03-2009, 11:52 AM In reply to

    Re: Trouble with Linkpoint API in IIS7

    Rovastar:

    What do the IIS website and httperr logs say?

    My HTTPERR log file has the following reason (repeated in the log file for each time the app has crashed) :

    • SiteId: 1
    • Reason Phrase:Connection_Abandoned_By_ReqQueue 
    • Queue Name:Classic32bitPool

    This link explains that the Reason Phrase means:

    A worker process from the application pool has quit unexpectedly or orphaned a pending request by closing its handle. Specific to Windows Vista and Windows Server 2008. 

    If that phrase is specific to Vista and Windows Server 2008, where can I find out more about what this Reason Phrase means and how to accomodate the difference in IIS 7?

    Rovastar:

    Anyway no matter 0xc0000374 implies that it is heap corruption.

    Honestly, Application Verifier and debugdiag is a bit father down the rabbit hole than I can go today.

  • 04-03-2009, 12:29 PM In reply to

    Re: Trouble with Linkpoint API in IIS7

    I must admit I found no more imformation other than in that KB link that I found.

    API troubleshooting gets a little heavy sadly that is the nature of the beast. Although I strongly think it is the domain of the API devs not the end customer. I cannot see what you can do.

    Hence way it suggested further troubleshooting here http://forums.iis.net/t/1156530.aspx for that error as the ISAPI dev can do something about it.

    Trying to find a hack to fix this is not the best way and may not even be possible.

    I suspect that if the API is doing something dodgy that was allowed in IIS6. Maybe as the link suggests 'a orphaned pending request by closing a handle' was allowed in IIS6 and not in 7.I don't know enough about IIS APIs to go into more detail.

  • 04-03-2009, 12:53 PM In reply to

    • riznick
    • Not Ranked
    • Joined on 12-17-2008, 7:07 AM
    • Posts 7

    Re: Trouble with Linkpoint API in IIS7

    Rovastar:
    The above posted had a heap corruption problem so I suspect the app is doing something wrong and mashing up the heap. If this is the case then the problem is firmly with the app and I don't know what to suggest other than approach the authors of the software.

    Unfortunately, the authors of the software say that they do not support IIS7 or any .Net above 1.0.  It works fine with the new versions of .Net on IIS6.  They told me I need to downgrade my application (which is wrong) to 1.0 before they would begin to attempt to help me. 

    I asked when they planned on supporting later versions of .Net and they said "sometime soon". 

     They also told me that if I plan to use IIS7 or Windows 2008 that I should switch merchant providers to another company that supports IIS7 or Windows 2008.  That's right...  Linkpoint's support actually told me I should dump their merchant if I wanted to use IIS7.

  • 04-03-2009, 5:34 PM In reply to

    Re: Trouble with Linkpoint API in IIS7

    I crawled down the rabbit hole, used WinDgb, and saw that it is indeed the vendor's DLL that is causing the problem (or, at least it is caused by some problem during an interaction between their DLL and ntdll.dll related to the release of memory when using IIS7)... just as Rovastar suggested.

    There does not appear to be anything that we can do to work around this issue.  My synopsis can be found here.

  • 08-04-2009, 9:23 AM In reply to

    Re: Trouble with Linkpoint API in IIS7

    I went through hell to try and fix this issue so I decided it's worth my time to sum everything up for future victims!

    My current system is Windows SBS 2008 with IIS 7.

     You can dowload the alternative DLL files from here: http://www.dragonlights.net/DragonLights/phpbb/viewtopic.php?f=4&t=233&p=233

    Follow the instructions at the link - You would need to use regsvr32 to register the DLL - Just open CMD with "Run as Administrator". Please make sure you run the regsvr32 from the WOW64 directory to allow the 32 BIT dll to register properly. Everything else will just return an error, so make sure you do it right.

    If you are using the .NET solution like I was, you would need to adjust your code to fit the COM Object. It is VERY similar and only requires 2-3 adjustmants inside the code file of asp (.vb or .c, whatever you are using). Check their documantation for the exact changes.

    After you're done, make sure to use the Aspcomp="true" at the header of your file. T

    hat wasn't the end of it on my end. I had to reconfigure the IIS7 to work with the 32 BIT application.

     1) Change the application pool to support the 32 bit.

     2) You will also have to change the application.config.

    Detailed instructions here: http://blogs.msdn.com/carloc/archive/2009/02/04/service-unavailable-in-iis7-with-32-bit-application-pool.aspx

    You will face one last error which you will solve by running: %windir%\system32\inetsrv\appcmd.exe set config -section:system.webServer/httpCompression /-[name='xpress'] This needs to be done using "Run As Admin" CMD.

    Hopefully this will help all of you who wasted A LOT OF TIME figuring this out.

    Nick.

Page 1 of 2 (20 items) 1 2 Next >
Microsoft Communities