Calling LabView from ASP or PHP ?
Hi;
I was wondering if someone could help me.
I need to control a spectrum analyzer remotely.. The VI's are ready, and I would Like to call/Run them from ASP/PHP in order to enable the remote client to interact with the VI's via a normal Web Browser.
Tips:
client should be able to send the VI's some data(variables).
Get the results back and display it on the web page.
Kind Regards
K.S.
Student
In that case, you might want to check http://www.jeffreytravis.com/. He has a book called "Internet Applications in LabVIEW". The book was written before 6.0 introduced remote panels. There's also an application there available for download called LabVNC that might work for you. I haven't tried it but it sounds like it would do the trick.
Similar Messages
-
I have been with this company for the past 10 years and NOW
they are no longer going to support ASP and they are only going to
focus on PHP. Is there a program that will convert asp to php? Is
this even something I should attempt as I do not know any coding
except what I have learned along the way. Thank you in advance.> Besides with PHP you get David Powers; who could ask for
more :)
Indeed.
What I really like about PHP is that I can do in one or two
commands what
would take me 8 or 10 lines of code in VBScript. And David
Powers.... 8)
Murray --- ICQ 71997575
Adobe Community Expert
(If you *MUST* email me, don't LAUGH when you do so!)
==================
http://www.projectseven.com/go
- DW FAQs, Tutorials & Resources
http://www.dwfaq.com - DW FAQs,
Tutorials & Resources
==================
"JBWebWorks" <[email protected]> wrote in
message
news:ghc4rf$ro3$[email protected]..
>I was an ASP user for many years and switched to PHP and
am very glad that
>I
> did. I used Web Assist and continue to do so and have
learned to develop
> somewhat where any extension would not do what i wanted.
I have found PHP
> to be
> much easier to learn beyond the basics (especially in db
connections).
> i have moved dozens of sites from ASP to PHP and there
was no transfer
> available that i could find, so i just started page by
page. I have found
> that
> PHP has been more reliable.
> I saw the posting thread on WA about not supporting ASP
but feel that i
> surely
> have gotten my moneys worth out of the extensions that i
bought and they
> all
> transferred to PHP.
> Besides with PHP you get David Powers; who could ask for
more :)
>
>
> -
How to call LabVIEW from TestDirector
Hai to all,
I want to call LabVIEW function from TestDirector. That TestDirector using VBScript. is it posible? if posible can you give the procedure.
thanks for advance!
reddyHello,
in this case you have to contact Mercury for more informations. There are no experiences in this way from the LV side.
Regards
Thomas D.
NI Germany
(SRQ 204139) -
Calling labview from external code
hello all,
I m a student and new to labview,i just want to ask that whether i can call VI developed in LAbview form my c++ code?
plz reply,it's urgent.
waititng for replies.
Thanx9866662680 wrote:
hello all,
I m a student and new to labview,i just want to ask that whether i can call VI developed in LAbview form my c++ code?
plz reply,it's urgent.
waititng for replies.
Thanx
If
you have the Application Builder or the LabVIEW Professional Developer
system you can compile the VI into a DLL and call that DLL as a
standard C DLL from Visual C(++). OTherwise you could call LabVIEW over
Active X and execute the VI through that. There are examples for
calling LabVIEW through Active X in your LabVIEW installation.
Rolf Kalbermatter
Rolf Kalbermatter
CIT Engineering Netherlands
a division of Test & Measurement Solutions -
Calling LabVIEW from C# Using ActiveX?
Hi,
I try to call LabVIEW VI's from C# using ActiveX/COM, but I am not
successful. I was able to do this from C++ and there are nice articles on
the NI site dealing with the C++ integration.
I tried to follow the instructions of the C# help, using a wrapper for the
LabVIEW application call. I included the TypeLib that I created with the
tlbimp-tool in my project. Basically my code looks like this:
LabView50TypeLib._Application myLV = new
LabView50TypeLib.ApplicationClass() ;
LabView50TypeLib.VirtualInstrument myVI = new
LabView50TypeLib.VirtualInstrument();
myVI = myLV.GetVIReference(,?,?);
myVI.SetControlValue();
myValue= myVI.GetControlValue();
myLV.Quit();
I even don't know if the fi
rst line is correct. I know that the second line
is not OK, because there is no class "VirtualInstrument" - but from what
class should I derive my instance for the VirtualInstrument? And different
from my C++ implementation, the GetVIReference now needs 3 parameters
instead of 1 (the path).
What am I doing wrong? Does anybody have a working example on this?
Thanks a lot & best regards,
Martin SchellenbergerHello
After adding a reference to the LabVIEW type lib to the project (I just to o to Project >> Add Reference and I browse for the typelib myself), and including the labview namespace at the top,here is what I tried
using LabVIEW;
//form code here
//Event for button code
LabVIEW.Application lv = new LabVIEW.ApplicationClass();
LabVIEW.VirtualInstrument vi= lv.GetVIReference(@"c:\a.vi","",false);
vi.FPWinOpen=true;
vi.Run(true);
So all it does is it opens the VI and runs it, seems to work fine. Hope this helps
Bilal Durrani
NI
Bilal Durrani
NI -
Calling Labview from VC++
I'm attempting to call Determinant.vi
(vi.lib\analysis\7linalg.ilb\Determinant.vi) from
Visual C++. I've actually gotten the
Determinant.vi to take a matrix that I pass it
from Visual C++ and return the determinant to me.
However, to get the determinant.vi to return an
answer to VC++, Labview has to be running, and
Determinant.vi has to be manually opened
from the Functions palette and placed on the block
diagram panel. Should determinant.vi have to be
opened before I can use it from VC++?
Sent via Deja.com http://www.deja.com/
Share what you know. Learn what you don't.Sorry for not being able to tell you exactly what you have to do but I have
used Active X only from inside of LabVIEW and someone still needs to
convince me that Active X is something more serious than just having a
few nice demos which work only sometimes. The hassle of distributing
an application which uses Active X seems overwhelming to me and
version conflicts are more common than not.
Do you have an Active X method like Open VI or something like this or
does GetVIReference allow for a complete path? Check out that the
path to the VI you want to open is correct. If you just define the name
LabVIEW won't be able to find the VI as the VI server in LabVIEW
does not search for VIs. It tries to find a VI with that name first in
memory and if i
t isn't there it tries to load a VI from the literal path
you specify. If both fail you get an error back.
[email protected] wrote in article <7qj86j$g81$[email protected]>...
> What I'm asking is does the vi that I'm using have to be manually opened
> (using LabVIEW), and manually placed in a block diagram window (using
> LabVIEW) in order to use its functionality from Visual C++? I would
> think you could do all of this from VC++ without having to load the vi
> using LabView. My program is designed to start LabView, open the
> Determinant.vi and begin using it. My program does this, but I get an
> exception from the GetVIReference call if I have not opened up LabView
> and the VI that I want to use before running my VC++ program. If I open
> LabView and the VI that I want to use before I run my VC++ program, then
> everything works fine. Has anybody else had this problem?
Rolf Kalbermatter
CIT Engineering Netherlands
a division of Test & Measurement Solutions -
I am trying to run a LabVIEW VI from DIAdem. I looked in the help files but the example seems to only open LabVIEW 7.0 and not open the VI. The process stops on the LabVIEW startup screen. Also I have LabVIEW 7.1 loaded on my machine and would like to be able to select which version of LabVIEW I start with DIAdem. Is any of this possible?
Thanks in advance.
AJLHi AJL,
If your VI happens to be in the LabVIEW directory or subdirectory structure, you can use native functions in DIAdem 9.1 to call that VI from DIAdem. If the VI is further configured to run when opened, it will automatically start:
IF IsAvailLabVIEW = TRUE THEN
LVTemplatePath = "examples\DIAdem\File\File Headers\"
LVTemplateVI = "Binary File Analyzer.vi"
Call LaunchLabVIEW
END IF
Otherwise you will need to create VBScript object variables from the VI server of LabVIEW and execute their methods and set their properties to have the same remote control over the VI as you would from another VI using VI server. The example Tom pointed you to shows this in intricate detail, in the context of a very large application. Here's what VI server looks like in VBScript:
Dim lvapp, vi, viPath, paramName(0), paramVal(0)
Set lvapp = CreateObject("LabVIEW.Application")
viPath = "C:\Favorite LV Menu\Binary File Analyzer.llb\Binary File Analyzer.vi"
Set vi = lvapp.GetVIReference(viPath)
vi.FPWinOpen = True
paramName(0) = "file path"
paramVal(0) = "C:\DIAdem Hands-On\ReadMe.txt"
Call WndShow("SHELL", "MINIMIZE")
Call vi.Call(paramName, paramVal)
Call lvapp.Quit()
You can read and write more than one parameter for VIs with multiple input/output terminals. Note that the paramName() and paramVal() variables are VBScript arrays. The number of elements in these arrays does NOT have to match the number of terminals-- all you need to put in these VBScript arrays are the parameters that you care to read/write in the VI.
Ask if you have additional questions,
Brad Turpin
DIAdem Product Support Engineer
National Instruments -
Call JavaApplet from HTML/Javascript/Php on the button click
Hello guys!
I have a JAR file, to establish telnet sessions. Everything is working with this simple piece of HTML code:
<html>
<body>
<applet CODEBASE="."
ARCHIVE="Telnet.jar"
CODE="Telnet.Applet"
WIDTH=500 HEIGHT=300>
</applet>
</body>
</html>
But there is something more. :)
I wan't to make a network topology with MS Visio , click on the Router, Switch or on the Firewall icon , and just then run that Java applet.
I can't find any good example how to achieve this. Maybe this is possible by running Java Applet from Javascript ? Etc. "onClickButton" ?
Thank you for your time and your answers.
Any help is highly appreciated!Dear programmers,
could you take a look there, this is a real world example.
login there with username: test12345 and password: test12345
http://e-learning.nil.com/
Then go there, and press "start lab"
http://e-learning.nil.com/C1257448003E0C9B/ep?readform&pid=lab&code=PA8VVMC3MNT
Click on the router icon, telnet application will show up.
If not , go to profile-> devices access, choose " use java applet".
How this is done without JNLP? Without downloading JNLP file? Java applet shows up like an application, and not in the new browser window?
Thank you very much for your time! -
Hi,
I've been told by a labview engineer that i could use the file
labview.tlb located in the labview install folder to control labview
from an external application (in my case, a C# app). I'm using Labview
6.1 under Windows 2000. This article confirms that:
"ActiveX and LabVIEW"
http://zone.ni.com/devzone/conceptd.nsf/webmain/5401BE584FBAEECE862567C2006D36C7?opendocument
But i've not been able to find out how to use this file to achieve
what i want. I just want to be able to open/close labview, open/close
a vi, start/stop a vi, hide/show a vi from a C# application. The above
web page talks about activex but i really don't see the realtion
between activex and that labview.tlb file.
Is there so
mebody around who knows how to use that file? Why does NI
tell us that it's possible to do what i want to do but doesn't explain
how (or hides this info very well)?
ThanksHi,
> Hi I am fighting a similar problem and so far I found this: Calling
> LabVIEW from C++ Using ActiveX
>
> http://sine.ni.com/apps/we/niepd_web_display.DISPLAY_EPD4?>p_guid=B45EACE3E21356A4E034080020E74861&p_node=DZ52051&p_submitted=N&p_rank=&p>_answer=&p_source=External
Thanks for the link, i actually already found this link before. I've
found yesterday how to use Labview.tlb, just add it to the references
of the project, it was probably too easy for me at that time:-) But
now, i'm still stuck as there is no doc about using the interfaces and
classes of this activex to control labview.
The example given on your link is made is C++ and for some reasons,
the wrapper generated for Labview.tlb when i added it to my c# project
doesn't seem to expose the same
interfaces and classes as the one used
in the C++ example. I therefore can't use the C++ example in C#.
I've tried to do something like:
LabVIEW.ApplicationClass a = new LabVIEW.ApplicationClass();
Just this line causes labview to launch but then immediately throws an
exception: "Query interface for interface LabVIEW._IApplication
failed".
Does somebody knows how to use that control in C#/VB.NET ? -
How to change Crystal Reports XI database name at run time from ASP code using ADO
Dear All,
I need advises regarding to my problem below
I have two database in same SQL 2005 SERVER for TEST01 and LIVE01 Environtment, and I've created more than 100 reports with Crystal Reports 11 and call it from ASP classic page.
The problem is how can I change a database from TEST01 to LIVE01 at the run time from ASP code as I already using TEST01 database on Crystal Reports and I do not want to set a new database location inside crystal for each reports
Thanks and wait for your reply soon.
Below is my code, which has no effect to crystal reports although I've change the database from TEST01 to LIVE01:
<%
Dim oADOConnection, oRptTable, oADORecordset, sql
Dim struser, strpwd, strdriver, dblocation, dbname, strConnect
struser = "sa"
strpwd = ""
strdriver = "{SQL SERVER}"
dblocation = "SQL200501"
dbname = "LIVE01" ' Changed from TEST01 to LIVE01
strConnect = "User Id=" & strUser & ";"
strConnect = strConnect & "PWD=" & strPwd & ";"
strConnect = strConnect & "DRIVER=" & StrDriver & ";"
strConnect = strConnect & "SERVER=" & DBLocation & ";"
strConnect = strConnect & "DATABASE=" & dbName
sql="Select * from Employee"
Set session("oApp") = Server.CreateObject("CrystalRuntime.Application.11")
Set session("oRpt") = session("oApp").OpenReport("C:\REPORTS\RPT01.RPT", 1) 'USING TEST01 DATABASE
session("oRpt").MorePrintEngineErrorMessages = False
session("oRpt").EnableParameterPrompting = False
session("oRpt").DiscardSavedData
Set oADOConnection = Server.CreateObject("ADODB.Connection")
oADOConnection.Open (strConnect)
Set oADORecordset = Server.CreateObject("ADODB.Recordset")
Set oRptTable = session("oRpt").Database.Tables.Item(1)
oRptTable.SetDataSource oADORecordset, 3
session("oRpt").SQLQueryString = CStr(sql)
session("oRpt").ReadRecords
%>Did you ever find a solution to this problem? I have the same problem when moving reports from development to Test to Production environments. If the DBName is not the same the report ignores the name provided at runtime.
-
Calling RFCs from Web through XI
We have used SAP.NET connector in the past to call RFCs from ASP.NET pages from our public website. We have now decided to use XI as the enterprise integration engine going forward.I am interested to know whether anybody has used XI to call RFCs from ASP.NET webpages. I do know that the XI to SAP calls would be made through RFC adapter.Will the communication from ASP.NET page to XI be thourgh the HTTP adapter ? or is there any other smarter way. Can somebody point me to sample code for the calls through http adapter or a how to guide?
cheers
RameshHi
U have scenario like this ASP.NET->XI->RFC, that means u will send a value from the ASP.NET page to RFC thru XI and then this RFC will give result which will come to ASP.NET frontend.
For this go thru this blog it will help u to understand how to communicate from ASP.NET to XI
<b>https://www.sdn.sap.com/sdn/weblogs.sdn?blog=/pub/wlg/1442</b [original link is broken] [original link is broken] [original link is broken] [original link is broken] [original link is broken] [original link is broken] [original link is broken] [original link is broken]> [original link is broken]
Code Sample is provided in the blog.
Hope it helps.
Regards
Arpit Seth -
I would like to Call Labview application (as Active X Server) from Visual C++. I need any type of exemple on how to do this, any input will be greatly apriciated.
In the summer there has been an example in the Developer Zone, but i can't find it again. I can send you the attached zipfile from that example. The example is resricted to single threaded applications. In multi threaded applications you must initialise OLE in the thread where you communicate with the active-X server.
If you need more information contact me at [email protected]
Waldemar
Using 7.1.1, 8.5.1, 8.6.1, 2009 on XP and RT
Don't forget to give Kudos to good answers and/or questions
Attachments:
VCandLabVIEW.zip 91 KB -
Creating a DLL in Labview 8.6 and calling it from Visual Basic 6.0
Dear friends,
I need to create a DLL in Labview 8.6 and call it from Visual Basic 6.0. The system works as follows:
I made an application using Labview 8.6 + Vision Assistant 8.6 where I can obtain the x,y coordinates of a template in an certain image being captured by an USB camera. The template coordinates change every time it moves and Visual Basic 6.0 must read these x,y values in real time. I found some information in the link http://zone.ni.com/devzone/cda/tut/p/id/3925, but it works for version 6.x of Labview and 8.6 version is different. Am I in the right path? If you have an updated tutorial like the one in the link above but for Labview 8.6 It would be very nice. Please help me.
Kind regards.
João JúniorHello Osvaldo,
I analysed the updated tutorial you sent me, but the thing is that it doen't show how to create the DLL in LV 8.6 but only show how to accessing the DLL from VB6. My problem is really HOW TO CREATE THE DLL IN LV8.6. In the link http://zone.ni.com/devzone/cda/tut/p/id/3063 there is detailed information about how to do this in LV6.x, the problem is that I don't find the path Tools»Build Application or Shared Library (DLL) in LV8.6, I think the procedure in LV8.6 is a little bit different. Don´t you have an updated tutorial on how to build a dll in LV8.6?How could you help me?
Kind regards.
João Júnior -
Completely different AMF request packets for same remote service call from Flex to PHP using ZendAMF
I was trying to debug why one of the remote-services in our Flex application was failing randomly. What I found was interesting. Completely different AMF request packets were sent for same remote service call from Flex to PHP.
When the service call succeeds the AMF request packet looks like the following:
POST /video/flex/bin-debug/gateway.php HTTP/1.1
Host: localhost
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.15) Gecko/20110303 Firefox/3.6.15
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 115
Cookie: PHPSESSID=j6u30i8uu6c3cvp8f4kipcpf05
Referer: http://localhost/video/flex/bin-debug/main.swf/[[DYNAMIC]]/5
Content-type: application/x-amf
C ontent-length: 305
Flex Message (flex.messaging.messages.RemotingMessage) operation = getMemberFromEvent clientId = 2F997CD0-7D08-8D09-1A9B-0000422676C8 destination = MembereventService messageId = B46AB58D-2241-83F0-41E4-9FE745565492 timestamp = 0 timeToLive = 0 body = [ 280 ] hdr(DSId) = nil
And when the service fails the AMF request packet looks like this:
ServiceRequest: getMemberFromEvent; RemoteService; getMemberFromEvent
(mx.messaging.messages::RemotingMessage)#0
body = (Array)#1
[0] 250
clientId = "1AA4FAAB-AEA5-8109-4B0D-000002B3A9A1"
destination = "MembereventService"
headers = (Object)#2
DSEndpoint = (null)
DSId = "nil"
messageId = "2F92E6C0-FE92-A09B-B150-9FE2F28D9738"
operation = "getMemberFromEvent"
source = "MembereventService"
timestamp = 0
timeToLive = 0
Also, following is the error message on Flex when the service fails:
{Fault code=Channel.Call.Failed, Fault string=error, Fault detail=NetConnection.Call.Failed: HTTP: Failed, Destination=MembereventService}
We are using Swiz as the micro-architecture for Flex development and Zend AMF for remoting between Flex and PHP.
Any ideas what is wrong here, what is causing Flex to send different request packets for the same service & what I can do to fix it?Hi, I know that your post is almost 5 years ago, but have you found the solution to this issue?
Thanks. -
Some errors when calling LabVIEW VIs Interactively from DIAdem
Hi! I'm having some trouble using the "Calling LabVIEW VIs Interactively from DIAdem" found on:
http://zone.ni.com/devzone/conceptd.nsf/webmain/1A98AB48E35D913086256E23004E6A22
Following the troubleshooting section didn't resolve the issue. I
recompiled and built the exe (DIAdemLabVIEW.exe) for version 7.1.1,
which I am developing on. But still I got the same error message, after
a waiting for about a minute, on a diadem popup window:
Error in <MenuAdd...ctDo.vbs (row:1, column: 1)
Error in <addmenuentry.vbs (row:14, column: 3)
ActiveX component can't create object.: 'DIAdemLabWIEV.Application'
Using the llb's and exe's that was included with the installer worked
flawless, with the exception that LV 7.1.1 vi's didn't appear on the
popup window(DIAdemLabWiev.vi). So I tried to recompile and build for
the 7.1.1, with this result.
I'd be very grateful for fixes or solutions for this problem!
Regards
Roger IsakssonBrad, thanks for the reply! Below is my (correct?) modification of your script. Have I got it right?
Dim lvapp, vi, viPath, paramName(1), paramVal(1)
Set lvapp = CreateObject("LabVIEW.Application")
viPath = "C:\TEMP\Test.exe"
Set vi = lvapp.GetVIReference(viPath)
vi.FPWinOpen = True
paramName(0) = "In Name"
paramVal(0) = "In Value"
paramName(1) = "Ut Name"
Call vi.Call(paramName, paramVal)
Call lvapp.Quit()
MsgBox "Parameter1 Value = " & paramVal(1)
I am not sure about the format of the <paramName(0) = "In Name">.
The control name is "In" and is a I32, the name for the indicator is
"Ut" and has the same storage type as the control.
Running the script gives an error in line 4, that is the <Set vi =
lvapp.GetVIReference(viPath)>. I'll attach the exe and the error
message.
I have another question regarding the relatively large amount of RAM
that diadem uses for export from my labview application to diadem. More
than 10 times the size of the data is required for exporting to diadem.
Since our application use relatively large files, actually up to
several GB's, this soon becomes problematic. See the attached picture
of the memory usage after exporting a 10MB segment (contains 42
channels of measurement data). Your help in these matters would be
appreciated!
Regards
Roger Isaksson, Damill AB
Message Edited by Roger Isaksson on 09-09-2005 10:22 AM
Message Edited by Roger Isaksson on 09-09-2005 10:22 AM
Attachments:
VBError.JPG 181 KB
Test1.vi 9 KB
Maybe you are looking for
-
Returning XML. Client.jar not properly created
Hi. I'm trying to deploy a web service that has some methods that receive Document as parameter and return Document as result type. Weblogic generates a client.jar that don't have all the needed classes, like, LiteralCodec, and many others. Anybody k
-
Date and Time adjustments for multiple photos
Hello, thanks for providing the space for new users, and thanks in advance for your assistance. I am currently moving out of apple aperture/iphoto and across to lightroom 5. The OCD part of me likes to have my library organized, and I noticed that wh
-
Prior to Family Share we had devices sharing a common account for purchases We setup Family share an switch the App Store account on some devices to those shared accounts Now when we try to update existing apps it refuses stating that they were purch
-
Best bluetooth card for early iMac G5 (2004)?
I've recently bought an iMac G5 without a bluetooth module. My understanding is that the following bluetooth cards would work with my iMac are: -A1115 -A1044 I was wondering if anyone could advise me on which to buy? Is one better than the other? Tha
-
Aperture isn't syncing to iPhone in chronological order
I just moved from iPhoto 09 to Aperture, and when I synced my iPhone with Aperture for the first time, Aperture isn't syncing to iPhone in chronological order like it did in iPhoto. All my images, albums, etc. are sorted by image date in Aperture, bu