Debugging a vc dll from the diadem?

Hi all,
  I want to debug a vc dll that is  being used in the diadem script. I Have registered the dll in the diadem. My primary aim is to debug the vc++ code from the diadem once the function in the vc dll is occured in the diadem script. My version of diadem is 9.1 and vc is 6. I have given the target application in the visual studio to be diadem and tried running  in the debug but the debug is not going in to the vc code.
If some one have encountered the same before let me know the steps in doing this process. The dll i'm using is a GPI extension DLL
With regards,
SKB
Message Edited by dragnov on 09-16-2009 04:02 AM
Solved!
Go to Solution.

Hello SKB!
I did this - the same way you did - for a long time without any problem. The only thing I can imagine is that the VC output DLL ist not the DLL you load in DIAdem. In a standard configuration the DLL debug version will be in the 'debug' directory of your project. In DIAdem this DLL must be registered. To be 100% confident you can use the tool 'Process Monitor' from SysInternals to view all DLLs loaded by DIAdem. If you check this just run your script in DIAdem first because DIAdem loads the DLLs on demand.
Matthias
Matthias Alleweldt
Project Engineer / Projektingenieur
Twigeater?  

Similar Messages

  • How to register a dll from the java code

    Hi,
    We can use windows utility Regsv32.exe to register a the components. Is it possible to register the Dll from the java code. If possible please try to provide me the code for the registring the dll.
    Thanks in adavance
    Aswad

    if a try this variant it doesnt work
    static {
            System.loadLibrary("shellExec.dll");
    but in this way it work (without .dll extension)
    static {
            System.loadLibrary("shellExec");
    }

  • Uninstalling HHActiveX.dll from the Registry?

    I am using RoboHelp 7.03.001. I have ActiveX features, such as a Glossary, in my projects. I am providing the CHM file and the HHActiveX.dll file to the developer. Everything help-wise works great. The problem is that the developer wants the HHActiveX.dll file to be removed from the registry when the user uninstalls our product, but it does not uninstall.
    Is the version of HHActiveX.dll that we are using (7.01.001) the current version? (Would that matter?)
    If there is a more current version, where can I download it. (I recently updated RH to v7.03, but the DLL is still 7.01, if that matters.)
    Is there a process that I can pass on to our developer so that he can remove the file from the registry as part of his uninstall process?
    Thanks!
    Karla Marsh

    Hi there
    Leaving HHActiveX.dll behind shouldn't be an issue. Sure, I understand that your developer wants to do a good job in cleaning up after him/her self, but how can you be absolutely certain you aren't clobbering the help for a different product that uses RoboHelp?
    There is nothing special about this file that your developer should need to know to remove it. It is registered like you register other DLLs. So whatever has to happen with those happens with this one.
    Cheers... Rick
    Helpful and Handy Links
    RoboHelp Wish Form/Bug Reporting Form
    Begin learning RoboHelp HTML 7 or 8 within the day - $24.95!
    Adobe Certified RoboHelp HTML Training
    SorcerStone Blog
    RoboHelp eBooks

  • Debugging a c++ dll from visual studio 2010

    Hi everybody
    I'm extending and optimizing a c++ dll that is called in a labview file. I have managed to get it update and running but it's not doing what is supposed to .
    I need to debug it by setting break point in the c++ code because the labview part is just memory and display. How I can do that? Any help will be really appreciated
    I'm using labview 2012 and VS210 express.
    Tanks a lot
    Amos
    i attached the main file of the dll and the labview interface.
    Solved!
    Go to Solution.
    Attachments:
    Fistola mono array.llb ‏1024 KB
    Dll lab.cpp ‏21 KB

    I have deleted the main, and as far as i can see ( so means see that everything says debug, i'm in local system should i switch to remote?) the configurations is fine. the strange things is that he keep asking me to compile the file when i start the debug even if i just do it. i'm sure i'm calling the right dll and i have set break point everywhere but still nothing. i tried to run labview step to step but it isn't helping. in labview the dll node debug proprety is set to maximum.
    i send you the adjurned dll
    Attachments:
    Dll lab.cpp ‏12 KB
    dllmain.cpp ‏1 KB

  • Debugging a JNI dll

    Hello,
    anyone have any clues on how to debug a JNI dll from visual studio? Just attach to the Java process in question, and place your breakpoint?
    Regards,
    Helge Fredriksen

    1. Open your DLL project in VS, and set breakpoints as you need them
    2. Search the VS settings for one which is the "calling program". Make the calling program java.exe.
    3. Supply commandline parameters to be passed to java.exe, such that the JVM runs your java program.

  • How can i change the class in the Class Library project to be static or public so i can use it from the windows application project ?

    First i know that when i make any changes to the class library project i need to rebuild the project then to remove the Capture.dll from the TestScreenshot project and then to add again the updated Capture.dll
    The problem for example in this case i'm trying to use a public static variable i add in the DXHookD3D9.
    In the DXHookD3D9 i added this public static variable:
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    //using SlimDX.Direct3D9;
    using EasyHook;
    using System.Runtime.InteropServices;
    using System.IO;
    using System.Threading;
    using System.Drawing;
    using Capture.Interface;
    using SharpDX.Direct3D9;
    namespace Capture.Hook
    internal class DXHookD3D9: BaseDXHook
    public DXHookD3D9(CaptureInterface ssInterface)
    : base(ssInterface)
    LocalHook Direct3DDevice_EndSceneHook = null;
    LocalHook Direct3DDevice_ResetHook = null;
    LocalHook Direct3DDevice_PresentHook = null;
    LocalHook Direct3DDeviceEx_PresentExHook = null;
    object _lockRenderTarget = new object();
    Surface _renderTarget;
    public static decimal framesperhourtodisplay = 0;
    protected override string HookName
    get
    return "DXHookD3D9";
    List<IntPtr> id3dDeviceFunctionAddresses = new List<IntPtr>(
    framesperhourtodisplay
    The problem is i can't even get to the Capture.Hook namespace and not to the DXHookD3D9 from the TestScreenshot application window project.
    This is a screenshot:
    For example fro the FramesPerSecond class i can use it get to it from the windows forms application.
    namespace Capture.Hook
    /// <summary>
    /// Used to determine the FPS
    /// </summary>
    public class FramesPerSecond
    int _frames = 0;
    int _lastTickCount = 0;
    float _lastFrameRate = 0;
    Since it's public i guess.
    But if i will change the DXHookD3D9 class from internal to public:
    public class DXHookD3D9: BaseDXHook
    I will get error on the DXHookD3D9: 
    Error 1
    Inconsistent accessibility: base class 'Capture.Hook.BaseDXHook' is less accessible than class 'Capture.Hook.DXHookD3D9'
    And the BaseDXHook class:
    namespace Capture.Hook
    internal abstract class BaseDXHook: IDXHook
    protected readonly ClientCaptureInterfaceEventProxy InterfaceEventProxy = new ClientCaptureInterfaceEventProxy();
    public BaseDXHook(CaptureInterface ssInterface)
    this.Interface = ssInterface;
    this.Timer = new Stopwatch();
    this.Timer.Start();
    this.FPS = new FramesPerSecond();
    Interface.ScreenshotRequested += InterfaceEventProxy.ScreenshotRequestedProxyHandler;
    Interface.DisplayText += InterfaceEventProxy.DisplayTextProxyHandler;
    InterfaceEventProxy.ScreenshotRequested += new ScreenshotRequestedEvent(InterfaceEventProxy_ScreenshotRequested);
    InterfaceEventProxy.DisplayText += new DisplayTextEvent(InterfaceEventProxy_DisplayText);
    ~BaseDXHook()
    Dispose(false);
    How can i solve it so i can use the variable framesperhourtodisplay in the DXHookD3D9 class with the TestScreenshot windows forms application ?

    Hi,
    I dont know if it will work here, since I dont know the complete structure, but the base call must be public, if the derived class is public, so the base class is at least as accessible as the derived class.
    Try make the base class public. (And maybe the base-class IDXHook of the base also...)
    Or use a different approach and make only the properties public that are needed to be public by adding an extra class...
    A structure could look like:(you need to create a class thats public in your dll and expose a property, and set this property in the internal class...)
    In the Accessing class (here Form1)
    public partial class Form1 : Form
    public Form1()
    InitializeComponent();
    private void Form1_Load(object sender, EventArgs e)
    C c = new C();
    MessageBox.Show(B.F.ToString());
    and in the class Lib:
    internal class A
    public A()
    B.F = DateTime.Now.Millisecond;
    public class B
    public static int F { get; set; }
    public class C
    public C()
    A a = new A();
    (add a referenc to the class lib from the accessing project)
    Regards,
      Thorsten

  • How to get last Build date of a dll in the real time target

    Info On My Project    
       I am working on LabWindows CVI 12.0 for development . This project is a real time application for hardware, which is having Phar Lap ETS as RTOS...  
    I am facing some problems while checking Build date of my Application file( .dll)
    I have tried to use GetFileDate API. But it is not supporting for realtime Target..
    So i have tried __DATE__ macro.. That also having some problems..
    How to get last Build date of a dll from the real time target  ??
    Please Help to solve this....
    Thanks
    Vaishakh A  K

    Please reply if any one have suggestion...

  • How do I get routing data from the Map App (powered by TomTom) so I can display the point-to-point annotations (turn-by-turn navigation) without leaving my own application.

    I have a tableView displaying a list of contacts from a Cloud Database.  After selecting a contact, I push to a programmatically created MKMapView.  Then I display the initial region (the view) that includes the users current location (starting point) and their selected destination (end point).
    Now I want to display annotations (as described in the Location Awareness Programming Guide) that displays polylines which will represent the turn-by-turn navigation IN MY OWN APPLICATION, and not in the Map App currently used in IOS6. 
    Due to licensing and its becoming depricated in IOS 6, I do not want to get routing data from the Google Maps API.  How do I get routing data from the IOS 6 Map App (powered by TomTom) so I can display the point-to-point annotations (turn-by-turn navigation) without leaving my own application?
    I checked out Stack Overflow and other forums which basically left me with the impression that this is not possible. I also checked out the TomTom iPhone Mobile SDK User Guide from the TomTom Developer Portal and am still confused.  It must be possible to retrieve routes, since the Map App can display turn-by-turn directions.  How can I retrieve turn-by-turn data that I may display as a route within my own application?

    Thanks Michael. Apologies for the slow reply I was away for a bit (holiday blitz at work and visiting family madness etc.etc.) back now, I set both options you requested to "never " and retried the CMS software with no change. 
    I do have progress of a sort though, as a test I took a separate test PC and put a clean install of Win7 on and loaded up the CMS software (it worked perfectly) and then took the version of ole32.dll off that machine and put it onto the computer I had built
    for her (using Linux) and...
    got a new error code. Darn I was so sure I had found a clever solution this time lol.
    Anyway now when the CMS fails it gives me a similar error but the offending module is "ntdll.dll" sooo... I tried taking the "working" version of ntdll.dll from the test box and moving it over (making sure to back up the existing ones
    first so I could put them back if needed) to her new PC and the PC would not boot. 
    It seems to want the original versions of a few Dynamic Link Libraries and if I could somehow give it those while not breaking Win7 it should theoretically work seeing as it no longer errors with ole32.dll. 
    ntdll.dll however seems necessary for Win7 to boot.
    So what I am wondering now is:
    Is there some way to have both versions of the DLL file in the system32 folder (bypassing the "cannot have two files with the exact same name in the same folder" thing) or rename the original DLL's something else and somehow make the CMS look for
    the new named versions so the system has the updated DLL's it needs to boot/run and the CMS has the old ones it wants to run or is there someway to have a self contained install of the CMS, say on a USB flash drive and give it it's own E:/windows/system32/needed
    dll's  path to the files it needs? 
    Willing to try any other options or settings you may have come up with as well.
    Thanks again for your reply and my apologies for not answering sooner.

  • How to delete a loaded DLL from an applet

    I succesfully wrote some code that extracts a Windows DLL from the applet jar to a temporary file and loads the extracted DLL (using a System.load call).
    Now I want to remove the DLL after the applet is closed. I tried to use the shutdown hook functionality of the java.lang.Runtime object, but this doesn't seem to work for an applet.
    Anyone any ideas about how to tackle this? Note that I'm not interested in installing the DLL's in for example the windows/system32 directory. To prevent any potential DLL versioning troubles I just want to use the DLL's as a temp file and remove them afterwards.

    I succesfully wrote some code that extracts a Windows
    DLL from the applet jar to a temporary file and loads
    the extracted DLL (using a System.load call).Once you loaded a DLL into JVM you cannot unload it.
    Now I want to remove the DLL after the applet is
    closed. I tried to use the shutdown hook
    functionality of the java.lang.Runtime object, but
    this doesn't seem to work for an applet.This is b/c the applet is running in the browser JVM and this isn't shutdown when an applet is closed.
    Anyone any ideas about how to tackle this? Note that
    I'm not interested in installing the DLL's in for
    example the windows/system32 directory. To prevent
    any potential DLL versioning troubles I just want to
    use the DLL's as a temp file and remove them
    afterwards.Maybe you can add to the DLL name as a suffix its version number.

  • WD Java Remote Debug problem: Release Process from debugging

    Hi Community,
    when I used to debug Web Dynpro Java from the SAP Developer Studio (eclipse) to a remote host (Portal AS NW Java), it works fine for the first run. After disconnecting the remote debug session (server0), I changed the coding and try to debug again with the effect that the old coding is still used from the server process (server0) even though the parameter "Create and Deploy archive" is set (enabled) in the debug configuration. Furthermore the funktionality of "Relase process from debugging" option in the J2EE Engine dosn't react / work.
    I think that the debug session is still running and the Developer Studio is not able to send any "Kill" statement to the server process for ending this session.
    I tried following:
    A. Rebuild Project and Deploy the archive on the "normal" way
    B. Reopen the Developer Studio itself
    C. Start the Project in debugmode again and chose the option "Terminate All"
    ...all without any success.
    The only way is to restart the whole server process server0 again with the same trouble after the first debug.
    Did any of you have a clue or experience to clear or kill the debugsession from the process so that next debugsessions can be started, please reply.
    Thanks
    Used Basic Manuell
    http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/849170e3-0601-0010-d59e-ddfce735fac5

    So, I'm having the same issue, but it's like I'm chasing down a port. The first time I got these error messages
    Connecting to the database DEV.
    Executing PL/SQL: ALTER SESSION SET PLSQL_DEBUG=TRUE
    Executing PL/SQL: CALL DBMS_DEBUG_JDWP.CONNECT_TCP( '555.12.18.288', '5950' )
    ORA-30683: failure establishing connection to debugger
    ORA-12535: TNS:operation timed out
    ORA-06512: at "SYS.DBMS_DEBUG_JDWP", line 68
    ORA-06512: at line 1
    Process exited.
    Disconnecting from the database DEV.Our network staff found a bunch of other denials in the firewall logs
    /5185
    /5200
    /5236
    /5815
    /5950 Now that they've those allowed, I tried to start debug again, and this time I got
    Connecting to the database DEV.
    Executing PL/SQL: ALTER SESSION SET PLSQL_DEBUG=TRUE
    Executing PL/SQL: CALL DBMS_DEBUG_JDWP.CONNECT_TCP('555.12.18.288', '6266' )
    ORA-30683: failure establishing connection to debugger
    ORA-12535: TNS:operation timed out
    ORA-06512: at "SYS.DBMS_DEBUG_JDWP", line 68
    ORA-06512: at line 1
    Process exited.
    Disconnecting from the database DEV.What gives? Do I just keep trying until I get all of the ports allowed?
    Thanks,
    ---=Chuck

  • Call DLL from pl/sql

    Hi Every one
    I have to call one microssoft dll from the pl/sql using form .
    How can I do it.
    Prashant

    That likely means that the DLL call failed.
    Some basics.
    A DLL exposes an interface where it lists the names of the proc/func exposed (together with a number/ordinal for each).
    The Win32 LoadLibrary() call is used to load a DLL. This returns a handle that is then used by subsequent calls to the DLL.
    In order to make the actual call, the caller needs to know the address of the procedure/function in the DLL. The GetProcAddress() is the Win32 call I remember using to get the address to call (but I think it has been deprecated since).
    Anyway, for the caller to call that proc/func in the DLL, it needs these steps:
    - load that library
    - get the "address" of that proc/func in the DLL
    - make the call
    The DLL is then executed - in the address space of the caller. Yes, the DLL's code segment is loaded once and shared amongst how ever many executables are using that DLL. But the DLL has no data segment - the data segment of the DLL lives in the address space of the caller.
    Should the DLL do something dirty/wrong, it can crash the caller by corrupting its address space. Or the DLL call could simply fail, throw an exception and terminate unexpectedly.
    This is the basics of the a DLL call - and also why Oracle wants to run that DLL call externally using the EXTPROC interface, so as not to risk that DLL compromising the memory space of the Oracle server process.
    This makes it a tad more complex now as the Oracle server process makes a call to EXTPROC (an IPC/RPC call) - and the EXTPROC process makes the DLL call (as described above).
    If that EXTPROC process crashes, the call that the Oracle server process made also terminates unexpectedly.
    Why can the EXTPROC process crash? Well, there are more meaningful errors returned when the DLL fails to load in my experience. So I expect that your DLL was found and that the EXTPROC process did a successful LoadLibrary() call - and even made a successful GetProcAdress() (or whatever call).
    But when the actual call to the DLL func/proc was made, an error resulted (incorrect parameter passing, invalid data types being passed, invalid memory being referenced, etc).
    This error caused a fatal error and terminated the EXTPROC process. No meaningful error was therefore returned to the Oracle server process - so it throws the exception "lost RPC connection to external process".
    Hope this was not too technical and you got the gist of it.

  • Creat a DLL from a set of VIs

    Hello,
    I've a board that cames with Labview VIs for each of its functions.
    As I'd like to use it from CVI, I need a DLL.
    NI support team gave me the procedure to make such a DLL, it works fine.
    But, the create DLL can't be used by 2 application in same time, as it was possible with the old fashion driver on WindowsXP, delivered by the board supplier.
    When I've an application launched using functions in the DLL, it is loaded and seems to be "privative" to this application: if an other one tries to load the DLL, there is an error frolm Labview wrapper.
    Is there an option to make such DLL "reopenable" or "reentrant"?
    Regards

    The DLL is written by Lavview tool to encapsulate VI and get them reachable from CVI: the board supplier no loger delivers a C-compatible DLL, only Labview driver and C# / .net / Java... modules, that implies heavy changes in our application to manage. NI support suggested to make this way a DLL from the set of VI delivered by supplier.
    In our case, on XP, the main application was using the board but it was possible in parallel to send commands from an other application.
    You're right it may be a question of locking resources by DLL / VIs functions: I'd like to know it there is a specific otpin when creating the DLL to make it reentrant and possibly get double access.
     

  • Building DLLs from VIs with array as output

    Is there any special way to build DLLs from VIs having arrays as outputs. Suppose I have a VI "Random" with input "nrand" and output an array "the_random2". When I build DLL from the VI, I have something like this in my header file
    void __stdcall Random(long nrand, double the_random2[]);
    Now it returns void. So I have to pass the array as pointer and retrieve it. If I use Mathscript to load the DLL and call this function, how do I pass the pointer to the array "the_random2"? Simply speaking, any useful method to build DLLs with array outputs and the right way to call them from Mathscript would be appreciated.
    Regards
    NRK

    Hi,
    Building DLLs in LabVIEW is described in this tutorial.  
    Mathscript can call shared libraries such as DLLs, however make sure
    that they are compliant with the supported data types as stated here in
    this help page.  All supported functions for calling/loading shared libraries is described here. 
    Note that these functions are not supported with the base package.  The
    details of the sytax of each function is described in their specific
    help page.
    Hope this helps!
    Regards,
    Nadim
    Applications Engineering
    National Instruments

  • Visual Basic UFLs pick is missing from the Additional Functions Tree

    I am trying to add a custom function written in VB to a Crystal report.  I have stepped through the entire process and have a dll ready to go.  I cannot see the Visual Basic UFLs pick under Additional Functions in the Formula editor tree.
    Details on Environment:
    Windows 7 64 bit
    Visual Studio Professional 2008
    Crystal Reports 10
    .NET 3.5 SP1
    Any assistance would be greatly appreciated.
    Thanks,
    Jemal

    Hi Jemal,
    It could be a bug. U2lcom is a legacy UFL bridge between COM and CR. Newer versions of CR has a new u212manager to manage UFL's in .NET and it' snot in CR Basic and version 10.5 runtime. It may be placed in the x64 folder but it may not work.
    There was one [CR for .NET|https://smpdl.sap-ag.de/~sapidp/012002523100009351512008E/crbasic2008sp1.exe] patch that may have fixed the issue but if it doesn't your only option may be to upgrade to VS 2010 and CR for VS 2010 and then use this [UFL sample|http://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/oss_notes_boj/sdn_oss_boj_bi/sap(bD1lbiZjPTAwMQ==)/bc/bsp/spn/scn_bosap/notes%7B6163636573733d36393736354636443646363436353344333933393338323636393736354637333631373036453646373436353733354636453735364436323635373233443330333033303331333633303333333333383331%7D.do] and update your Project and UFL.
    CR for VS 2010 is a full feature version and includes RAS which gives you much more functionality.
    See this page for more info: http://www.sdn.sap.com/irj/boc/crystalreports-dotnet
    It may be due to the 64 bit GAC is having problems find your dll. Try renaming the one in the x86 folder:
    C:Program Files (x86)Business ObjectsCommon2.8 in
    And see if it throws a new error, if it does then verify it is loading the dll from the x64 folder.
    Don

  • What shall I do after generate .dll from web services

    Hi,
    After I have successfully generate the .net classes from the web services, I proceed to generate the .dll from the .net. After which, what shall I do?? How shall I uses those classes?? Can someone advises me (newbie)??
    Thanks alot!!

    A .dll is in the .NET world like a .jar in Java Land, a packaging unit (or assembly). It does have very little to do with Web Services.
    If you are starting with .NET and C# (or any other langague from the # collection), you should start by following some HowTo from Microsoft online documentation. The MSDN site seams a good place to start.
    To call a Web Service hosted on the .NET framework from Java, you will need to locate the Web Service interface definition; the WSDL resource. Once you have this information, the easiest way to get started would be to build a Web Service proxy from JDeveloper, if you are planning on using the Oracle tech stack.
    Hope it helps,
    -Eric

Maybe you are looking for