Creating string pointer for dll

I'm trying to use a DLL to access a Reflective memory board using LV6.i
under Windows2000. The first call to the DLL takes a pointer to a string
that contains the device name and it returns a handle to that has to be
used in all other calls.
The syntax is - RFMHANDLE rfmOpen( char devPath );
The example in the documentation is;
RFMHANDLE rh;
char *devPath = "\\\\.\\RFM1"; This is the
W2000 name for the board
if( (rh = rfmOpen( devPath ) ) == NULL ){
exit(1);
All the other calls pass the handle rh as the calling parameter.
My question is how do I create the string pointer devPath?
Ed

Ed,
I'm a Labview DLL rookie but I think all you have to do is in the DLL
configure define the arg Type as a "String" and the String Format as a "C
String Pointer". Then when you wire that terminal up, just connect it to
Sting Constant or Control. Then just pass that argument the device name
string. Labview will take care of actually passing the that string pointer
value to the DLL.
I just done something similar with an array of 16 bytes. I am supposed to
pass the function the pointer to the array and it will change the data in
that array. I defined the arg as Type "Array" of Data Type "Unsigned 8-bit
Integer", Dimension "1", and Array Format as an "Array Data Pointer". I
then connected that terminal to the Build Array function of 16 bytes. The
output terminal
directly accross from that input terminal was connected to
an array indicator. When I run the VI the data bytes were changed as
expected.
The point is that I never really had to deal with the pointer directly. So
you don't have to create the string pointer, just create the string and
connect it to the terminal defined as a string.
- David
Ed Bogart wrote:
> I'm trying to use a DLL to access a Reflective memory board using LV6.i
> under Windows2000. The first call to the DLL takes a pointer to a string
> that contains the device name and it returns a handle to that has to be
> used in all other calls.
>
> The syntax is - RFMHANDLE rfmOpen( char devPath );
>
> The example in the documentation is;
> RFMHANDLE rh;
> char *devPath = "\\\\.\\RFM1"; This is the
> W2000 name for the board
>
> if( (rh = rfmOpen( devPath ) ) == NULL ){
> ....
> exit(1);
> }
>
> All the other calls pass the handle rh as the calling paramete
r.
>
> My question is how do I create the string pointer devPath?
>
> Ed

Similar Messages

  • Problem to create change pointer for custom message type - Idoc creation

    Hi,
    We want to create IDOC and send it out when the data of "planning calendar" changes. So we are trying to generate change pointers whenever entries in Table T439I (Planniing calendar) data change.
    We created a message type, activated change pointers generally and maintained change relevant fields for message type (not sure if this step is done correctly). But not getting any change pointer in table BDCP2 when I create a new planning calendar in MD25.
    Can anybody help / guide?

    Thanks once again,
    I had linked idoc type and message type in we82. Now after i activate the change pointers. I try to generate the IDOC type using BD21. It gives me the error message :<b> "Message type ZP2PPROJ_MSG cannot be sent with change pointers"</b>
    whereas in my segments i am using all the master data only (i.e. PRPS, PROJ,PRHI). Please throw some light on this.
    Also please clarify, do i need to make an entry of this custome message type in the partner profile ?
    Rgds
    kewal.

  • How do i make a array of user defined structure and creat a pointer for the same

    Function
    The prototype of the dll function is
    unsigned long PassThruIoctl(unsigned long A, unsigned long B, void *pvar1, void *pvar2);
    "void *pvar1" and "void *pvar2" are pointers to different Structures. The value of  "unsigned long B" will determine what kind of Structure the pointer will represent.
    One sample structure is given below when pvar1 is the pointer to SCONFIG_LIST.
    typedef struct
          unsigned long ParameterID;    // this an input to the dll
          unsigned long Value;          // this is an output from dll
    } SCONFIG;
    typedef struct
          unsigned long NumOfParams;    // the no. of elements(SCONFIG) in array
    (input)
          SCONFIG *ConfigPtr;           // the pointer to array of SCONFIG
    (input)
    } SCONFIG_LIST;
    The function is supposed to get the values of configuration parameters (from an external interfacing device).
    When I tried to run the function as shown in the attached VI, I always end up with error. The error I get is saying something about DLL corrupting the memory of Lab View.
    Solved!
    Go to Solution.

    What will be the structure for pVar2?
    One issue that I can see in you code is, for pvar1 instead of passing an array of clusters, you are passing a cluster of SCONFIG. Also you need to initialize the numbr of elements in the array before passing it to the DLL (see attached code). In this I have assumed that pVar2 is also expecting a similar input.
    I was not able to run the code here becasue the dll is not there. So please try and let me know.
    "A VI inside a Class is worth hundreds in the bush"
    യവന്‍ പുലിയാണു കേട്ടാ!!!
    Attachments:
    GETCONFIG_2.vi ‏9 KB

  • Web Page Composer: Problems creating entry points for iViews

    Hi experts, i´ve been trying to add an iView to a page. I know i have to create an entry point to a folder created on the PCD.
    I followed instructions on help link http://help.sap.com/saphelp_nw70/helpdata/EN/06/4776399abf4b73945acb8fb4f41473/content.htm
    Now, when i try to create a new entry point link to the pcd folder i don´t see any navigation that can get me to the pcd.
    Actually When i click the browse button it opens the Web Content folder where i can see 2 subfolders
    - Cross-Site Content
    - Sites
    I also have this options:
    - Favorites
    - Personal Documents
    - Recently used
    - Common folders
    - Public Documents
    None of it seems to be the access to the PCD.
    I´ll appreciate any help
    Thanks in advance

    Hi Sandeep,
    i don't know if your problem was solved already.
    Here a quick overview of all steps, that you need to perform.
    1. Make your PCD available in the KM.( See Link below for details) Your folders need to have 'Read'-Permission for the Everyone-group!
    2. Search your iView-folder now in the KM. Look at Details -> Properties -> Access Links -> ID
    3. Provide this ID in the wpcDragExplorerEntryPoints . (Should be sharedcontent=/wpccontent/Cross-Site Content;/documents/MyFolder; /pcd)
    Link to SAP Help Documentation
    Best Regards,
    Marcus
    Edited by: Marcus Böhm on Jul 3, 2008 12:11 PM
    Edited by: Marcus Böhm on Jul 3, 2008 12:13 PM

  • Creat Shipping point configuration for plant

    Hi
    I want create shipping point for plant XYZ.
    I need to create shipping point, so that I can maintain country and Transportation zone for the same.
    Request you please tell me where i can configure in IMG?
    What is the step by step process for setting shippong point for anty plant ?
    Vicky

    Hi Vicky,
    Shipping Point Configuration:
    1) SPRO->Enterprise Structure->Definition->Logistics Execution->Define, copy, delete, check shipping point...  for Defining the Shipping Point
    2)SPRO->Enterprise Structure->Assignment->Logistics Execution->Assign shipping point to plant... for linking Shipping Point with Plant.
    3)SPRO->Logistics Execution ->Shipping->Basic Shipping Functions->Shipping Point and Goods Receiving Point Determination->
                 ->Define Shipping Conditions
                 ->Define Loading Groups
                 -> Assign Shipping Points ........ here you enter the combination of Shipping Condition, Loading Group, Plant for  determing the Shipping Point which can be one default and many manual.
    Regards,
    Karthik

  • How to create  Entry Point to pcd repository?

    Hi,
    I am unable to see the iviews to drag and drop on the web page in Web page composer.
    I tried to create static entry point to PCD repository.
    But I can't the PCD folders.
    How do I configure this?
    Thanks
    Thruna Shanmuga

    Hi Vishal,
    Thanks for your replies.
    I am able to see the my folder
    in Content Administration -> KM Content -> 
    pcd>portal content>Test
    In the property i set the following value.
    displaymode=select,maxproviderprio=30,entriesperrow=5,entrypointsprefix=/entrypoints,
    sharedcontent=/wpccontent/Cross-Site Content;/documents/MyFolder;/pcd/Test
    When I tried to create entry point in Web Page Composer, I click the browse to find the Test folder.
    I can't see the Test folder.
    How do I create entry point for the Test folder?
    Thanks
    Thruna Shanmuga
    Thanks
    Thruna Shanmuga
    Edited by: Thruna Shanmuga on Apr 6, 2009 10:34 PM
    Edited by: Thruna Shanmuga on Apr 6, 2009 10:42 PM
    Edited by: Thruna Shanmuga on Apr 6, 2009 10:42 PM

  • FLV/Mp3 Cue Points for Accessing Frame Labels on the Main Timeline in Flash 8

    Hello,
    In Flash MX2004, creating cue points for syncing locations on
    flv and mp3 files to locations on the main timeline included:
    1) Dragging a media component onto the stage
    2) Entering file path, frame label name, and time code
    information in the component inspector
    3) Creating the frame label names on the main timeline, and
    4) Enabling the Media Labeled Frame Cue Point Navigation
    Behavior
    Flash 8 documentation details a considerably different
    process of creating cue points. While it discusses how to create
    cue points in the flv, I have not been able to locate how to enable
    linking locations in flv and mp3 files with frame labels on the man
    timeline. It appears that there would need to be ActionScript
    necessary to accomplish this that is not available in the docs.
    Please advise what ActionScript/process would enable this
    function.
    Thank you!
    James
    [email protected]

    I usually start off solving problems with the livedocs, as I
    recommend for anyone. The following link will take you to the
    NetStream.onCuePoint handler. This is what you need.
    http://livedocs.macromedia.com/flash/8/main/wwhelp/wwhimpl/common/html/wwhelp.htm?context= LiveDocs_Parts&file=00002561.html
    You can have this code on the main timeline. When the
    cuepoint is hit, it will invoke this event handler and inside is
    where your gotoAndPlay( ) should go.
    Your other question about the text will get activated by the
    same handler. Just have a conditional statement (if, switch, etc.)
    to differentiate between the two events. The text itself can be
    mask inside a movieclip.
    Does this help?

  • Create mount point .

    Hi guys.
    How to create mount point for database .
    Thanks.

    Even if you tell us the operating system your system may use another file system provided by another company separate from the OS so information about file system software would help us as well. JFS UFS VERITAS........
    I presume your talking about "mount points" because you need another file system for this restore. Your Unix admin should be able to help provide extra disk capacity?
    Kind regards

  • Creating a LabVIEW Shared DLL for use with C# and Strings?

    Hi All,
    I am trying to create a prototype for a LabVIEW Shared DLL that all the VI does is take in a string and return an upper cased string. Needless to say the DLL builds fine but when I try calling the shared DLL from C# the .NET application recieves an exception about "Ansi char arrays can not be marshaled as byref or as an unmanaged-to-managed parameter". Does anyone have an example of how to pass a string to a VI and return a string or an example of a better way of accomplishing this.
    We are using labVIEW 7.1 on Windows 2000.
    I am in quite a bit of a hurry to prove that this type of a LabVIEW Shared DLL VI would work. The eventual system will be passing in a string of XML with a large amount of
    data and returning XML.
    Thanks in advance,
    Jim

    Hello jprucha,
    This occurs because LabVIEW DLLs are not considered managed code. As such, we need to define the C# function as unsafe to be able to call unmanaged DLLs.
    You can find more information about C# and managed code at Microsoft's developer website linked below.
    MSDN Home Page
    Good luck with the development,
    Matt F
    Keep up to date on the latest PXI news at twitter.com/pxi

  • Vi reference = function pointer for external DLL?

    So I'm porting this simple program from C to LabVIEW. All it does is getting some signals from an haptics hardware (Sensable Phantom Omni). It should be simple, but it has shown several complications. (been stuck for 2 weeks )
    I successfully imported the hardware's DLL with all of its functions (using LV 8.2, because 8.5 and 8.6 's wizard sucks).
    But there is a function whose argument is a function pointer:
    hUpdateHandle = hdScheduleAsynchronous(updateDeviceCallback, 0, HD_MAX_SCHEDULER_PRIORITY);
     I already have the corresponding VI for updateDeviceCallback (which gets a (void *) that does not really use, and returns an int).
    hdScheduleAsynchronous is part of the hardware's API (I can't mess with it, nor I know what's inside), and as first argument expects a function pointer.
    Can I use the Open VI reference node to get the 'pointer' for my VI and then feed it as an argument for the external DLL? How do I properly cast the VI ref datatype into a function pointer?
    Solved!
    Go to Solution.
    Attachments:
    QueryDevice.c ‏9 KB
    updateDeviceCallback.vi ‏14 KB

    JavierRuiz wrote:
    So I'm porting this simple program from C to LabVIEW. All it does is getting some signals from an haptics hardware (Sensable Phantom Omni). It should be simple, but it has shown several complications. (been stuck for 2 weeks )
    I successfully imported the hardware's DLL with all of its functions (using LV 8.2, because 8.5 and 8.6 's wizard sucks).
    But there is a function whose argument is a function pointer:
    hUpdateHandle = hdScheduleAsynchronous(updateDeviceCallback, 0, HD_MAX_SCHEDULER_PRIORITY);
     I already have the corresponding VI for updateDeviceCallback (which gets a (void *) that does not really use, and returns an int).
    hdScheduleAsynchronous is part of the hardware's API (I can't mess with it, nor I know what's inside), and as first argument expects a function pointer.
    Can I use the Open VI reference node to get the 'pointer' for my VI and then feed it as an argument for the external DLL? How do I properly cast the VI ref datatype into a function pointer?
    LabVIEW has no concept that can translate seemlessly to function pointers and there is certainly no sensible way to make the Call Library Node support something like this.
    There are possibilities to create a DLL from your callback VI and import the function using Windows API calls to pass it as a function pointer to your other function. But this is involved and quite dirty and most importantenly a total nightmare to maintain, since things go completely awry if your DLL is created in a different LabVIEW version than the LabVIEW version you call it with. This may seem like a piece of cake now but whoever will have to upgrade your software to a new LabVIEW version later will love you to the point that they will feel like sending you as the original programmer a nice little present that blows in your face when opened 
    The only feasable way is to write a wrapper DLL in C that translates between something more LabVIEW friendly like a user event and the actual callback function mechanisme.
    Rolf Kalbermatter
    Message Edited by rolfk on 06-09-2009 10:24 AM
    Rolf Kalbermatter
    CIT Engineering Netherlands
    a division of Test & Measurement Solutions

  • Creating second InfoView entry point for SAP users in XI 3.1

    Hi All,
    I have BOE XI 3.1 up and running with the Business Objects Integration kit SAP Solutions kit I would like to create a second infoview entry point for SAP users on the same physical box (single server) as regular InfoView. 
    I am trying to mock this up and have detailed the following steps below.  I suspect I am missing a few steps (for example, where do I specify the entry port?).  I am sure step 2 is wrong, as I the desktoplaunch no longer exists in Xi 3.1
    1.  Copy the InfoView.war file to a new directory ( Program Files/Business Objects/ Business Objects Enterprise 12.0/java/applications/sap).  I imagine I would need to rename the war file (say SAPInfoview.war)?
    2.  Create a xml file with the following logic (the part in bold I consider to be wrong...):
    <Context docBase="Program Files\Business Objects\Business Objects Enterprise 12.0\java\applications\sap\SAPInfoview.war" path="/
    businessobjects/enterprise115/desktoplaunch"
    crossContext="false" debug="0" reloadable="false"
    trusted="false"/>
    3.  Save the xml file (what name? does it matter) in Program Files\Business Objects\Tomcat55\conf\Catalina\localhost
    4.  Restart Tomcat
    5.  Change the web.xml to make SAP security the default.  But this should not be the regular infoview web.xml.  I'm not sure where this would reside.
    Thanks,
    Steve
    Edited by: Steve Bickerton on Jan 15, 2009 9:19 PM

    Hi Ingo,
    You've been working with Duncan and Sartaj on this.  The client has two set of users:  non HR which has no BW or R/3 authorization restrictions, and HR, which has authorization restrictions.
    They have deployed SSO using AD for the non HR users.  They also want to leverage InfoView rather than the SAP portal.  For the HR users, we therefore need to capture the SAP id and password at login time to enforce security at the BW and R/3 levels.  We could use the existing Infoview entry point (SSO will fail and they will be prompted for a SAP login).  I do remember that we offered a second InfoView entry point for SAP users in XIR2.  I thought this may be more elegant.
    Thanks,
    Steve

  • How to manually create layer breaking point for DVD9

    Hello, I was wondering if someone could please tell me how I would go about to manually set the layer break point for a DVD9 project that I burned onto 2 DLT tapes. The total size of the DVD is 6.3GB.
    I had used the "automatic" setting for burning the DLTs and sent them to a replicator. They came back saying that the layer 0 tape did not allow enough headroom for their Ripguard protection.
    I've always used the automatic setting and this is the first time I am asked to manually set it. SO now I need to figure out how I can put a certain amount of data on one DLT tape and the rest on the other DLT.
    I am a beginner at this so any help would be greatly appreciated.
    Thank you!

    Hi Eric,
    Unfortunately the information you have regarding RipGuard and the ability to copy RipGuard protected discs is a little outdated.
    Can RipGuard be broken? Yes, anything can be broken into, including the DoD Website by 14 yr old chinese students... but that doesn't mean there isn't value in protecting the DVD.
    Also, RipGuard is regularly updated, just like Antivirus software, so while older versions of RipGuard can be broken more easily, the latest versions of RipGuard are significantly more difficult to circumvent by existing software.
    But again, the point isn't to create the unbreakable 'holy grail' DVD copy protection, but rather to protect something of value.
    When you leave your house in the morning, do you close your front door and lock it? Of course you do, but why? So no one will break in. But do you think locking up your house is really going to stop someone from going around to the side of the house and busting out a window if they really want to get in? Of course it wont. If someone wants to break into your house, they will find a way.
    Same thing with DVDs. You lock your house because it provides a method of protection, a barrier to make it more difficult and to keep honest people honest. That's what RipGuard, or any copy protection software does.
    So the question isn't why would you protect your DVD, but rather why wouldn't you? In most cases if you prevent just a few illegal copies of your DVD from being ripped, it has already more than paid for itself.

  • Well, I created a new Apple ID and I put money on it, I wanted to sign into ICloud and it wouldn't let me sign in due to the usage of too many Apple IDs created. The point for logging into the ICloud was to save my photos before I reset my phone.

    Well, I created a new Apple ID and I put money on it, I wanted to sign into ICloud and it wouldn't let me sign in due to making too many Apple IDs created. The point for logging into the ICloud was to save my photos before I reset my phone. Is there any way I could fix this? I also want to transfer my money because I think it's a waste to just forget about the $13.75 on my account. Thanks.

    I recently created a new apple ID
    Bad idea.
    Content bought with an Apple ID is forever associated with that Apple ID. Apple will not transfer content from one Apple ID to another and Apple will not merge Apple IDs. Unless you are prepared to forfeit all the previously purchased content and buy it all again with the new Apple ID, you will need to maintain the old ID to update and redownload your content.

  • [svn:osmf:] 15983: Updating VideoQoSPluginMetadataSynthesizer to create comma separated string values for all of the available keys .

    Revision: 15983
    Revision: 15983
    Author:   [email protected]
    Date:     2010-05-10 04:47:46 -0700 (Mon, 10 May 2010)
    Log Message:
    Updating VideoQoSPluginMetadataSynthesizer to create comma separated string values for all of the available keys.
    Modified Paths:
        osmf/trunk/apps/samples/plugins/VideoQoSPlugin/src/org/osmf/qos/VideoQoSPluginMetadataSyn thesizer.as

    Rob:
    "but the sad thing is, that managers will most likely respond with a "This used to be fast in MSSQL, but now it isn't any more in Oracle. Oracle is so slow ...""
    On the bright side, it sounds like most of the database calls are implemented as stored procedures, so there is an opportunity to do it right (in Oracle terms) in the stored procedures.
    I did a similar conversion a while back, converting bad SQLServer procedures to good Oracle procedures. Everyone said "Oracle is much faster that SQLServer"
    John

  • Points for the blog created in September 2013

    Hello there
    I posted a blog in September 2013. I do not see the points awarded for it. I did check the profile settings to earn the badge and one of them does state that you need to post a blog, which I already did.
    Kindly do the needful!
    The link to the blog is as follows:
    How to Ensure that BPC Displays Only Uploaded Records for Planning
    Regards
    Gajendra

    Hi Gajendra,
    You posted your blog as personal blog. So no points assigned.
    If you post technical docs/blogs at related forums then only you will get points.
    No points for personal blogs/docs.
    If you posted at BPC 10 NW forum. you may get points for the same. at below forum you need to choose create blog or doc.
    SAP Planning and Consolidation, version for SAP NetWeaver
    Thanks

Maybe you are looking for

  • Functions in Calculation and Summary Fields

    Hi, I'll give a bit of background to my situation before describing the advice I'm looking for here. I am experienced Mac user and I have used AW a fair bit in the past, but since I've been working in a job which has Windows machines and uses a compl

  • Downloaded Latest Itunes but now it does not open at all, with no error msg

    I have downloaded the latest version of iTunes for my Laptop. I have recently moved my internet to my laptop so i have been updating software for the past two days. However, when the download of Itunes is finish i can not open it. There is no error m

  • Create multiple idoc with multiple receivers based on value mapping table

    Hi, Scenario:  Step1 : sender sends a finance doc iin the form of an idoc. This idoc will have multiple line items based on profit center. Do determine the value of receiving comp code(header field) n receiving system(logical sys name) value mapping

  • Showing old DocNum on MoveNext(r)MoveLast

    hi all,           On this menu events iam fetching correct records from the DB & showing it in the combo box   If pVal.MenuUID = "1288" Or pVal.MenuUID = "1289" Or pVal.MenuUID = "1290" Or pVal.MenuUID = "1291" Then                 Dim objForm As SAP

  • Installing from app store????

    Ok my first attempt at using ANYTHING from the app store failed. I downloaded (and it appeared to install properly), one of the freebies, "WeatherBug", and although it appeared to install (I had the icon on the home screen and when I went back to the