Coldfusion & COM DLL execution concurrency

Hi all,
I've been researching this problem on Google for a few weeks
and have come up blank.
We are running on ColdFusion MX6.1 & call some VB6 DLL's.
These DLL's interface with a 3rd party system & can take a
while (between 3 and 10 seconds) to execute their methods. The
DLL's themselves do not consume much in the way of resources.
It would appear that these DLL call's are being serialized
between users. IE, if 2 users invoke the DLL's at the same time, CF
will wait until user 1's call is finished before invoking the same
DLL method for user 2.
These DLL's are STA threaded, and I would have though that
ColdFusion (J-Integra) would start the second DLL in a separate
apartment (because user 2's request is coming in on a separate Java
thread) , therefore allowing both users DLL methods to be invoked
in parallel.
Does anyone know if ColdFusion is capable of executing
methods on the same DLL concurrently, or is there some sort of
limitation that causes these methods to be executed in serial?
Can someone please point me in the right direction.
Thanks,
Dave

HI... I have one similiar problem i run one code with jniwrapper in a simple java application from eclipse, but when i pass my code to a WebDynpro i get the next message
com.jniwrapper.win32.com.ComException: COM object method returns error code: 0x80070005; E_ACCESSDENIED (Acceso denegado.)
what can i do, in the EP the method call return me ACCESS DENIED ?

Similar Messages

  • Error in generating COM DLL via DCOM Object Builder

    Hi,
    Iam creating a COM DLL for a BAPI and I always get the error when generating the DLL. I have Visual C++ 6.0 installed in the same PC.  Pls help.  Thanks.
    C:\vb>CALL "C:\Program Files\Microsoft Visual Studio\VC98\bin\vcvars32.bat"
    Setting environment for using Microsoft Visual C++ tools.
    Microsoft (R) Program Maintenance Utility   Version 6.00.8168.0
    Copyright (C) Microsoft Corp 1988-1998. All rights reserved.
         midl.exe /Oicf /h "Flights.h" /iid "Flights_i.c" "Flights.idl"
    Microsoft (R) MIDL Compiler Version 5.01.0164 
    Copyright (c) Microsoft Corp 1991-1997. All rights reserved.
    Processing .\Flights.idl
    Flights.idl
    Processing C:\PROGRA1\MICROS4\VC98\INCLUDE\oaidl.idl
    oaidl.idl
    Processing C:\PROGRA1\MICROS4\VC98\INCLUDE\objidl.idl
    objidl.idl
    Processing C:\PROGRA1\MICROS4\VC98\INCLUDE\unknwn.idl
    unknwn.idl
    Processing C:\PROGRA1\MICROS4\VC98\INCLUDE\wtypes.idl
    wtypes.idl
    Processing C:\PROGRA1\MICROS4\VC98\INCLUDE\ocidl.idl
    ocidl.idl
    Processing C:\PROGRA1\MICROS4\VC98\INCLUDE\oleidl.idl
    oleidl.idl
    Processing C:\PROGRA1\MICROS4\VC98\INCLUDE\servprov.idl
    servprov.idl
    Processing C:\PROGRA1\MICROS4\VC98\INCLUDE\urlmon.idl
    urlmon.idl
    Processing C:\PROGRA1\MICROS4\VC98\INCLUDE\msxml.idl
    msxml.idl
    Processing C:\Program Files\SAPpc\SAPGUI\rfcsdk\include\sapconn.idl
    sapconn.idl
         rc.exe /l 0x407 /fo "Flights.res" /d "NDEBUG" "Flights.rc"
         cl.exe /nologo /GX /MD /W3 /O1 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_USRDLL" /D "_ATL_DLL" /FD /c /Fp"Flights.pch" /Yc"FlightsAfx.h" FlightsAfx.cpp
    FlightsAfx.cpp
    bapiret2.h(116) : error C2059: syntax error : 'constant'
    bapiret2.h(117) : error C2146: syntax error : missing ';' before identifier 'rfc_padd_4_1bperC'
    bapiret2.h(117) : error C2059: syntax error : 'constant'
    bapiret2.h(119) : error C2146: syntax error : missing ';' NMAKE : fatal error U1077: 'cl.exe' : return code '0x2'
    Stop.
    Regards,
    Kelvin
    [email protected]

    Hi,
    For those who might encounter a similar problem, I manage to solve the problem by installing the DCOM Connector from the same SAP GUI CD (ver 6.2).   I had the impression to download the DCOM Connector from sap.com but they have the 4.6D version which causes a problem if you are using a higher version of SAP Gui.  The rule of thumb is to install the RFC SDK and DCOM Connector from the the same SAP GUI CD.
    Just note that DCOM Connector is reaching End-of-life.
    Cheers,
    Kelvin

  • Reading the Interfaces name which the class is implementing in a COM dll is implementing.

    Hi All,
    I'm using .NET Reflection to read a COM dll. I'm able to fetch the classes that are present in the dll. But I would like to know interface name which this class is implementing.
    For a .NET dll we can know the name of class's implementing interface name using the <classname>.BaseType.Name property.
    How can I know the interface name which this class is implementing (if any).
    Please let me know how to do this for a COM dll.
    Thanks in advance,Satish
    Thanks, Satish Bommideni "Success usually comes to those who are too busy to be looking for it."

    Hi,
    Thanks for the reply.
    I'm reading the COM assembly using the methods available in oleaut32.dll.
    Also I've imported the namespaces
    System.Runtime.InteropServices.ComTypes;
    System.Runtime.InteropServices;
    to use its respective methods and thus I'm able to read it's classes.But donot know what property to check for this class's interface.
    Kindly let me know if you need any further information.
    Thanks, Satish Bommideni "Success usually comes to those who are too busy to be looking for it."

  • How to use COM DLL in LabWindows

    Hello
    I have a COM .dll which looks like that when opened with dll export viewer:
    I would like to use the Get4AxisPos function in LabWindows.
    I understood that, as I only have the .dll, the only way of calling these functions are with the LoadLibrary() and GetProcAddress() functions.
    My problem is that the Get4AxisPos function is not of type Exported Function but COM Method so I don't know how to use it in my LabWindows project!
    My questions are: Is it possibleto use this dll in Labwindows? If yes how?
    Thanks
    Solved!
    Go to Solution.

    Hi ,
    I am new to C++ and COM  .
    i need to implement a client application in C(lab windows CVI) , server is a c++ COM object.
    steps followed by me
    ---> accessed the registered COM object with Labwindows CVI active x controller template,output was a c file which is implementation of the class names in COM (interfaces).
    I can use majority of the functions directly from the generated, but i need to implement some event functions like message box events and then use it.
    I have seen one method of accessing in C++ client sample ,
    which implements Queryinterface function...takes the IID_Unknown as input and returns interface pointer(inhereted static_castof the required class, uses static_cast for that) as output.
    when i try to follow up the same in c , i am lost  with the inheritance concept.
    In short i need to send IID Unknown to the Queryinterface function and should get the interface pointer of message box type or other class type ...
    Sorry for the long mail,Please guide me
    Thanks in advance ,
    Satish

  • CR XI R1: viewer can't open report with UFL from COM dll

    Hello all!
    I faced the following problem: report which is uses functions from COM dll doesn't works on customer's pc. CRViewer throws exception when calling ViewReport() method. GetLastError() gives just 0 ...
    All other reports without functions from COM DLL are working on that PC however. Moreover, reports which uses function from non-COM DLL are also working.
    Versions & environment:
    - Report file is designed in CR11, CR Developer; Product type: Full, Product Version: 11.0.0.895
    - Runtime files on customers pc installed by .msi created from merge modules for Crystal Reports XI RDC Deployments (latest available SP4 for CR XI R1: [crxi_rdc_merge_modules.zip|http://resources.businessobjects.com/support/communityCS/FilesAndUpdates/crXI_rdc_merge_modules.zip], as listed on [this|http://resources.businessobjects.com/support/additional_downloads/runtime.asp] page)
    - target OS: WindowsXP SP3, all updates are installed
    - i'm using COM crviewer, but there are some points in application where report is opened using CRPE api - it is also crashing on reports with custom functions from COM DLL
    - UFL DLL is registered and loaded correctly (investigated by debug output), looks like crash occured during attemt to call function
    - just for test I tried to install CR Developer on customers PC: it successfully opens all "problem" reports, but the viewer in application still crashing ...
    I would appreciate any tips / suggestions. Please also let me know if I need to specify versions of other products / components.
    Thx,
    Andrew

    Sorry, but you have to define "viewer just crashed". To different people this means different things; error, viewer never shows up, application terminates, etc., etc., etc....
    If the issue is only 10% of computers then it is not
    Re. "...could be caused by:"
    - previous installation of CR8.5 (or earlier) runtime (how to cleanup it correctly?)
    possibly - see below
    - OS configuration (what we need to ajust?)
    probably not - as long as it's the same OS and SPs
    - something missing in our code (but why it works in 90% cases?)
    -no
    - something wrong with CRXI runtime (but we a using latest available MSMs, and again, this works in 90% ...)
    possibly see below.
    I would approach the issue by running [Modules|https://smpdl.sap-ag.de/~sapidp/012002523100006252802008E/modules.zip] and comparing the dlls loading on a computer that works and one that "crashes"...
    Your second utility is [Process Monitor|http://technet.microsoft.com/en-ca/sysinternals/bb896645.aspx] but ProcMon creates large and difficult to read files.
    Oh, and get the powers that be to start to consider moving away from this legacy "stuff". Like I said, PE APIs have been gone since version 9 of CR and RDC has been retired in CR XI R2 (11.5). Neither product is supported anymore.
    - Ludek

  • COM dlls in the Standard and Professional Editions of Crystal Reports

    Post Author: enz0
    CA Forum: Deployment
    Hi.
    Do the Standard and Professional editions of Crystal reports install all the com dlls?
    thanks

    Hi,
    The crystal reports trainign for SAP Business One is designed for partners and customers and provided for free to them.
    It's not available to non-customers. You will need to have a login to the partner or customer portal to use it.
    Alternatively you can use the regular Crystal Reports training resources or available books to get yourself skilled for Crystal Reports. Being able to work with Crystal Reports is 90% of the work where as the SAP Business One specific's are in the area of ....
    - Release 8.8: the datasource connections; working with variables in the report; intergration and distribution of reports
    - Release 2007: linking the reports into the SAP Business One menu and making them secured available to the end users.
    Best regards,
    Peter

  • Dll hell version prbblem for a COM dll developed in VC++

    Hello
    We have developed a COM dll in VC++ ATL. We have developed a client application in labview using Ver1.0 of our dll. And now we have changed our dll to Ver2.0 .So now when we register ver2.0 dll, the first client application which is using ver1.0 is not working. Is this because of the dll hell versioning problem. Is there any other way we can do in labview so that we can avoid this dll hell versioning problem. Please let me know.
    Thanks in Advance.

    I supposed your dll is a COM server registered it into the Windows registry.
    In that case you need a reference to call its functions. Place an Automation Open VI, connect an automation refnum constant to the input, right click on it, select ActiveX class Browse... there you should find your objects, the COM servers.
    The Automation Open's output reference can be used to the Invoke Node VIs, to call dll methods.

  • How to call LabVIEW dll from ATL COM dll

    I have tried to call simple LabVIEW 8.6 Dll from win32 test application, class Library.
    I have include LabVIEW generated SharedLib.h file and SharedLib.lib file in the test application which I created as simple win32 console project and also from win32 class Library. I was sucessfully able to call my LabVIEW dll funtion. 
    But when I create ATL COM project and try to add SharedLib.h file and SharedLib.lib file I used to get following erors
    Error 1 error C2733: second C linkage of overloaded function 'StrCatW' not allowed d:\program files\national instruments\labview 8.6\cintools\extcode.h 463 
    Error 2 error C2733: second C linkage of overloaded function 'StrCpyW' not allowed d:\program files\national instruments\labview 8.6\cintools\extcode.h 464 
    Error 3 error C2733: second C linkage of overloaded function 'StrCpyNW' not allowed d:\program files\national instruments\labview 8.6\cintools\extcode.h 465 
    Error 4 error C2733: second C linkage of overloaded function 'StrCmpW' not allowed d:\program files\national instruments\labview 8.6\cintools\extcode.h 466 
    Error 5 error C2733: second C linkage of overloaded function 'StrCmpNW' not allowed d:\program files\national instruments\labview 8.6\cintools\extcode.h 467 
    these many errors.
    Will some one explain me how to call LabVIEW dll from ATL COM dll.
    Thanks & Regards,
    Jay

    I also had this problem.  My application is unicode-aware, but I was attempting to link it to a library with primitive C-string arguments.  You could dynamically load the DLL as suggested (more work), modify the header files (really not recommended), or if you are feeling lucky you could try fooling the compiler, as I was successfully able to do in Visual Studio 2010, by steering the preprocessor around those functions (assuming you're not using them, of course -- otherwise this probably wouldn't work):
    // prepare for NI extcode.h inclusion. avoid linker errors for this project.
    #define StrCatW(a,b)     IgnoreLinkError_StrCatW(a,b);
    #define StrCpyW(a,b)     IgnoreLinkError_StrCpyW(a,b);
    #define StrCpyNW(a,b,c)  IgnoreLinkError_StrCpyNW(a,b,c);
    #define StrCmpW(a,b)     IgnoreLinkError_StrCmpW(a,b);
    #define StrCmpNW(a,b,c)  IgnoreLinkError_StrCmpNW(a,b,c);
    // header file for my LabView-built DLL (ASCII single-byte character arguments)
    #include <MyLibraryHeader.h>
    // clean up afterwards, put things back to 'normal'
    #undef StrCatW
    #undef StrCpyW
    #undef StrCpyNW
    #undef StrCmpW
    #undef StrCmpNW

  • DLL execution time

    Hello,
    Does anyone know how to reduce the time of calling the DLL file in the LabVIEW RT ? When I call the DLL file in a timed loops, the iteration duration shows that it needs half of a millisecond ( around 0.5 ms) to load the DLL file (inside the DLL file it do nothing just adding x to y and return the sum). Therefore I want to ask does the LabVIEW RT need to reload the DLL file every time in the timed loop?  And how could I reduce the time of calling DLL file?
    PS: the DLL is made by LabWindows CVI with Real time module.
    Thank you,
    Yan

    Thank you Danny, your reply is very helpful for us to understand the mechnism of how LabVEIW RT is running.
    Texas_Diaz wrote:
    Is it necessary to call into the DLL in the Timed Loop?  The timed loop is a...
    It is very time-saving for us to use DLL file to in our project, because we are using a third party PCI card (Beckhoff FC1100 PCI EtherCAT slave card) and it's very convenient for us to manipulate the PCI card by using the C language. Therefore we want to turn this C-language-based program into a DLL and call it in the LabVIEW RT.
    Okay, now that we got that out of the way, there are things you can do to optimize calls to the Call Library Function Node.
    Unless your DLL entry point is deemed "non-thread-safe", and therefore must run synchronous to other calls into the same DLL entry point, NEVER use the default thread - that will use the UI thread, which controls more than just the DLL call.  Always change the thread context to "Run in any thread" so that the "current" thread (or any other ready LabVIEW execution thread) can be used.  This will significantly reduce jitter in your application and prevent certain classes of runtime deadlocks.  You can tell if the Call Library Function Node is set to UI thread or "any thread" by looking at the color of it - it will be Orange if using the "UI" thread, or Yellow if using "any" thread.
    You can prevent a DLL from being loaded / unloaded each execution call by following a few simple programming techniques.  Basically by exposing the DLL path input and reusing the exact same node used to originally load the DLL, if you then call back into that very same node - but this time provide a blank path - the DLL previously loaded in memory will be used instead of reloading a/any DLL again.  This way you're dynamically loading the DLL at runtime and are allowing the node to keep the DLL in memory.
    Keep the DLL call short and sweet.  
    1. Yes, I enable it "Run in any thread", it can save a little execution time by 5-9 us.
    2. By following the provided example, namely loading the dll file dynamically, but the execution stayed unchanged. 
    3. I use a simple DLL file to do the test, so in this simple DLL file, it just execute sum = x + y, which x, y is the input argument and sum is the return value. so I think the DLL file is simple enough.
    But I still have some questions:
    Do you think the performance of the target machine has a profound impact on DLL execution time? Because I use 32bit desktop PC with core 2 duo CPU as the target machine.
    Another question is that: 
    I use the LabWindows CVI to generate the DLL file, do you think the execution time will be same if I use the visual studio to program the DLL file? Actually, I have tried use Visual Studio 2012 to generate a DLL file, but the DLL file cannot run on the LabVIEW real-time target, I think because the DLL files is generated by the Visual studio, therefore it may needs some Microsoft dependency, do you know how to generate the LabVIEW RT- compliable DLL file by using Visual Studio? 

  • Calling COM DLLs using JNI

    I am able to call ordinary dlls from my java application using JNI, by exporting the function from my DLL.
    What can I do to call COM DLLs using JNI which do not expose the
    Functions directly.
    please help!
    thanx,
    -sachin

    Is this a COM dll that you have written or do you merely have the dll?
    If you merely have the dll, there are some third party tools that will generate Java interfaces to COM objects from the dll.
    Although I don't endorse these products or work for them I've used them before with some success:
    o J-Integra -- http://www.intrinsyc.com/
    o jacoZoom -- http://www.infozoom.de/
    -- rob

  • Forms with COM dll

    Hello!
    Our program developed by Forms 6i.
    Can we call to COM dll and how can we do it if possible?
    Thanks!

    if you're on client-server there are two possibilities:
    Use ORA_FFI to map the C-calls from the dll to pl/sql-calls or (if supported by COM.dll) use OLE to communicate with the COM.dll over OLE.
    Be aware that migrating your application to 10g (which you will need to do at some time) the ORA_FFI-solution will be harder to migrate.
    For details on ORA_FFI have a lok at the Forms 6i-online help, there should be examples in it.

  • JNI communication with MFC COM DLL issue

    Hello all,
    I have a MFC COM dll which exposes a method to be called from Java. For this I am using JNI.
    This method is written to set an integer value into a Microsoft Project Plan. There is some unknown error at the statement where the setting is done, causing the Java application to crash (JVM crash).
    What could be the reason?
    Regards,
    Hemanth

    if the JVM crashes, the problem is in the native code. "Something" in the DLL is causing an error. What that something is nobody can tell you.
    If you can, I would create a shadow setup in a C++ application that does exactly the same as the Java code and see if that works; if it does at least you know there is something wrong with the JNI setup. If it doesn't you can easily debug the problem.

  • JNI support to COM dll????

    HI all,
    I have a COM dll built not using either C or C++. So my question is whether JNI supports only C and C++ dlls or it also supports COM components built using C#.
    I have a dll built using C#,
    Can I use JNI to invoke some operations on that dll???? if so How????
    Waiting for ur response
    Thx in advance
    MK

    See
    http://simtel.net/product.php[id]93010[SiteID]simtel.net

  • 64Bit COM Dll not get registered.

    Hi ,
    I'm trying to register 64 COM dll on 64 bit machine but it not get register with regsvr32. It gives error as follows
    "The module 'C:\program Files\XYZ.dll' was loaded but entry-point DLLInstall was not found. Make sure that C:\program Files\XYZ.dll' is valid dll or OCX file and try again"
    Dll exist at that path. On some 64bit it get registered.Please provide me a solution.
    Thanks in advance.

    Hello,
    The best way is to ask the provider for the documentation of how to register the COM properly. Your question is not realated to Visual C# language.
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click
    HERE to participate the survey.

  • How do communicate with COM DLL(microsoft COM object written in VC++)

    How do i communicate with a COM DLL(written in VC++ or VB) with a java program. The COM object has a method called dispPrint(String arg).

    Or if you are like me, use a product like Jawin which simplifies things like this (no need to a intermediate dll).
    http://staff.develop.com/halloway/code/jawin.html

Maybe you are looking for

  • Dynamic Column Names in Flat File Destination

    Hello, Inside a Data Flow Task, I have an ADO.Net data source which executes a stored procedure that provides results in 5 columns. The requirement is to have it connect to a flat file destination, such that the column names is dependent on what data

  • Using bberry to connect to the internet

    i have connected to the internet using my bberry and things are working well except i cannot send out mail from my outlook mailbox. i am receiving and sending from my gmail. i am receiving from outlook mail but cannot send. what is the problem?

  • Enhancement on VA05

    Hi All, Entering the TCode-VA05, and then pressing Further Sel Criteria button we got the screen where there are seven check boxes. I want to add another check box for PLANT. What I have to do. Please give me some solutions. Thanks to all.

  • HT1689 can i use an old iphone that is not being used as a phone as just an ipod?

    Can i use an old iphone that is not being used as a phone as just an ipod?

  • Remedy integration with EM

    Hi All, we have integrated Remedy with EM 10.2.0.5.0, tempaltes are registered based on the requirement, but tickets are not getting raised in remedy, it gives error as "*The creation of ticket failed. Please check the service desk system is running