Legacy ActiveX Control Calls DLL Functions ?
Sep 1, 2010
Hint: this one might sound complicated, because I am trying to give as much info as possible, but I suspect that I just want someone to tell me "yes, you are correct".
On this legacy system, which dates from 2002, the user visits a web page and uses an RFID reader to read a tag number, which is then written to an input field on the web page.
The only s/w that comes with the reader is a custom DLL, nop .exe.
The very sparse documentation insists that only MSIE be used and that all security relating to ActiveX be disabled.
When I look into the source of the web page I see calls to functions in the DLL.
Now, here's the fun part: I know zilch about ActiveX, I have to make a minor change to the DLL _but_ the VB6 source code has been lost, so I guess that I have to recreate the (seemingly very simple) DLL from scratch - this week.
Decompiling the DLL shows me the functions (locateReader, getTagVal, closeReader). However, by decompiling I can't really know the number or type of the parameters, nor the return values ... and if anyone knows the API they are refusing to share it, but basically it all seems to have been lost in the mists of time as companies went bust, were bought & sold, merged & demerged and the initial DLL might have been written by an external guy, but no one knows who.
So, can I get the function params & type from the ASP page source?
I see things like
Reader = new ActiveXObject("<dllName>.Reader");
Reader.locateReader();
tagVal = Reader.getTagVal();
Reader.closeReader();
So, I would say that none of the fn()s take parameters, that closeReader doesn't have to return anything; it looks like locateReader doesn't return anything either, so I guess that error handling will have to be in the DLL (loop forever with a popup demanding that a reader be attached; and getTagVal seems to return a string.
Does that sound about right? Any other comments (other than lessons to be learned)?
View 1 Replies
Similar Messages:
Jul 30, 2010
Currently I have written the Activex Control for RFID USB reader and calling that one in ASP.NET web application. The Activex Control is working fine when I will give the full trust permission for particular IIS URL in
1. Open Control Panel > Administrative Tools > .NET Framework 2.0 Configuration
2. Expand Runtime Security Policy > Machine > Code Groups > All_Code
3. Right Click All_Code and click New...
4. Create a new code group, I named mine MyProject_FullTrust_Zone
5. Choose the URL condition type and specify the path on the network where the apps will be deployed.
6. Choose Use Existing permission set, and set it to Full Trust.
Alternative way of giving permission for an Activex Control is
1. Open Visual Studio Command Prompt
2. Run the command caspol -machine -addgroup 1. -site <ip address> FullTrust Doing this it works fine.
Whenever my web site will open, it will ask the user to give permission for the Activex Control using Allow or Cancel Button in browser. This type of functionality I have seen some web site which takes input from the user to allow the ActiveX Control.
View 1 Replies
Jan 21, 2010
i created one ActiveX control in VB6 i need to use this ActiveX cotrol. how to register and how to add to AspX page.
View 7 Replies
Dec 29, 2010
I have created a windows control and hosted it into my web application. I created that because I need to do some system level tasks through web application. The issue is that I need to show a modalpopup on that form and the activex control is coming on top of modal popup, rest is fine.
View 5 Replies
Feb 3, 2010
I want to integrate a ActiveX control into asp.net page, I wonder if Firfox can support ActiveX control or not?
View 1 Replies
Mar 4, 2010
I have developed a web application (ASP.NET Web Forms). One of my customer has very restrictive policies. When he accesses the web page, IE shows this message:
Your security settings do not allow Web sites to use ActiveX controls installed on your computer. This page may not display correctly.
As far as I know, we don't use ActiveX controls on our page. I did a "View > Souce" and did not find anything suspect.
How can I find what part of my page refers to an ActiveX. The application uses jQuery and a few jQuery plug-ins. Is there a tool/add-in like "Fire Bug" that I can use to list the ActiveX controls referred on a page?
View 1 Replies
Jan 7, 2011
I've been tasked to update and install a new version of an old ActiveX control in our Aspx web application .The actual updating is fairly straightforward, but the installing is giving me headaches. Here is what I tried:
In the VB6 editor, get the properties of the ActiveX project, and check off the "autoincrement" checkbox in the "Make" tab.Set the version to 1.0.12 Create a new CAB with the Package&Deployment wizard. Copy this CAB to my website.
Then in the Aspx itself, I update the version of the activeX as follows:
Me.Page.Header.Controls.Add(New LiteralControl(String.Format("<div style=DISPLAY:none'><object id='PrtLabel' codebase='{0}' classid='CLSID:AB61148E-D4B5-4D4B-8867-9E4CE8229B5E' viewastext></object></div>", "PrtLabel.CAB#version=1,0,0,12")))
After this, I delete the prtlabel.dll and prtlabel.inf files from the "c:windowsdownloaded program files" folder.
Problem is, when I then visit the web page and it asks me to install the activeX, it doesn't actually do it (no error message appears though). When I go back to the "c:windowsdownloaded program files" folder, ONLY the prtlabel.inf file has been copied there, NOT the prtlabel.dll file.
Is there a special procedure to put a new version of an ActiveX control in your website?
View 2 Replies
Mar 4, 2010
I have to fullfill a requirement where my activeX control (developed in c#) need to invoke a callback JavaScript function asynchronously (or) synchronously (or) in both ways. I can handle the context using threads. JavaScript:
function handler_1(){ ..... }
myActiveXObject.registerCallBack(handler_1);
Where in ActiveX control, I need a function "registerCallBack" to accept the argument. But I have no clue how to invoke that registered JavaScript function from my ActiveX control. By digging MSDN forum, I found something as script.GetType().InvokeMember("myJSFunctionName", BindingFlags.Instance | BindingFlags.InvokeMethod | BindingFlags.Public, null, script, null);
the above line throwing me an exception Unknown Name etc. I do have the definition for "myJSFunctionName" in javascript and I got the script object from the document object.
View 2 Replies
Feb 11, 2010
I developed a activex control, it can work well in IE, but not in firefox , is it possible for my activex control to work in FireFox and Google Chrome?
View 1 Replies
Mar 23, 2011
I'm trying to use a third-party ActiveX control on our intranet ASP.NET site, and I've run into a problem I can't figure out.
Expected behavior: The control expects to see a specific variable in the URL ("msg"). If you provide it, it works. If you don't provide it, it complains that the value is missing.
If I put the control in an HTML page, it works fine. But if I then change the page's type to aspx, the control acts as if the variable isn't there. The control still loads and runs; I'm not getting any permission or safety messages. But it complains that "msg" wasn't provided on the URL.
In other words, if I try these URLs, the first one works fine; the second one gives me the "you didn't provide the msg parameter" complaint:
(works fine)
http://mysite.mydomain.com/controltest/test.html?msg=123
(complains)
http://mysite.mydomain.com/controltest/test.aspx?msg=123
I know the aspx version is being processed by the server before being sent to the client, but there aren't any server-side commands or tags (it's the same file, just copied and renamed). As far as I can tell, the resulting page that is sent to the client is exactly the same.
Is there something about aspx vs html that would cause the control to not be able to get that variable? I can see it fine from javascript that I add myself. Here's the content of the page. Not much to it. If I get this working I intend to add some aspx tags and code, but there's no point yet.
<html>
<head>
<title>
ActiveX Control Test
</title>
</head>
<body>
<OBJECT ID="control1" CLASSID="..." CODEBASE="..." >
</body>
</html>
View 1 Replies
Apr 7, 2010
I have a dll written in VS 2008 that needs to act like an ActiveX control called via JavaScript from a HTML page and writes a file to the users local machine.
The main code is like the following:
[Code]....
The control works if I turn off a lot of security in IE and manually run regasm on the users machine, but how do I automate the process and let it run without the users having to lower their security levels?
Do I need to get the dll signed? If so how do I get it signed and how do I deploy and install it to users?
View 2 Replies
Aug 4, 2010
In a page there is an activex control as well as a button whose onclick opens an ajax modal popup. The problem i face is that whenever the button is clicked the ajax pop up loads behind the activex control and thus it is hidden.So I am not able to use that control at all. I have not found a proper solution to this. I tried a solution where a browser check condition was removed from the ajaxtoolkit code. but no luck. Am using Ajax toolkit version 3.0.30512.1.
View 2 Replies
Feb 17, 2010
I have the following Page_Load function...
protected void Page_Load(object sender, EventArgs e)
{
XmlDataSource1.Data = GetXmlFromFile(Request.QueryString["file"]);
XmlDataSource1.DataBind();
Repeater1.DataBind();
}
The page in which this Page_Load resides is called by a parent page. Each time this Page_Load gets called the value of "file" in the query string will be different. So each time I will be receiving the XML contents from a different file which are inserted into the XmlDataSource and then bound against by the Repeater. Getting the XML data from the file works great but when I bind against the repeater that only works the first time through Page_Load. Each time after that when this code is executed the same results from the first XML file are displayed in the repeater.
What am I missing here. How can I get the XML data to be bound against the repeater on each page load instead of just the first one?
View 3 Replies
May 10, 2010
I have a webservice (ASP.NET) deployed on a webfarm. A client application consumes it on daily basis. The problem is that some of its calls are duplicated (with difference of milliseconds). For example I have a function Foo(string a,string b). The client app calls this webmethod as Foo('test1','test2') once but my log shows that it is being called twice or sometimes 3 or 4 times randomly. Is this anything wrong with the webfarm or the code? Note that the webmethod has simple straighfarward insert and update statements.
View 1 Replies
Dec 23, 2010
I need a multiple file uploader dialog,that means I can able to select multiple files at a time in file upload window.How can I achieve this task? I gone through Google and I came to know that we can achieve this using silverlight and flash plugins,but these are not recomandable in my application. Is there any open source(i.e free) ActiveX controls for Multi file Uploader? Is it possible to create own ActiveX control to achieve this task.
View 4 Replies
Jan 28, 2011
I Apply SSL Certificate on my web but due to this Activex Control not load. While i remove my SSL Certificate then Activex Control Show.
View 1 Replies
Sep 15, 2010
I'm trying to create an Activex control (similar to the Crystal Activex) to Print tag's from a Client side to a Com Port 1. I created a User control I can pass values to it etc, but It won't Print.
User Control Code:
[Code]....
View 1 Replies
Oct 29, 2010
I have a control in a 'window control library' which handles - 'drag and drop' files from computer to a listbox control, I then reference this .dll in .aspx (See code below). Now, when i try to access this through webserver for drag
and drop files i get following errror - The type of the first permission that failed was : System.Security.Permission.FileIOPermission.
How do I handle this, so that drag and drop of files can happen over the webpage residing at webserver.
namespace testWinControl1
View 1 Replies
Sep 17, 2010
I have created a class library in which i m having Web Forms.now when i use this dll in ASP.NET websiteand call methods
ModuleTest obj = new ModuleTest();
List<CustumFields> objlist= new List<CustumFields>();
obj.CheckModule("admin", "password", "Testing102", objlist);
then it gives error,ActiveX control '8856f961-340a-11d0-a96b-00c04fd705a2' cannot be instantiated because the current thread is not in a single-threaded apartment
this.components = new System.ComponentModel.Container();
this.panel1 = new System.Windows.Forms.Panel(); [Code]....
this error occurs at .this.webBrowser1 = new System.Windows.Forms.WebBrowser();
when i mouse over webBrowser1 then it shows null....
View 8 Replies
May 3, 2010
I'm curently developing web application which uses standard form authorization and, of course, server session objects (quite classic app). Now I'm developing client side component, which base functionality is to allow users to acquire tiif/jpg/pdf document from scanner (client side) and send it to server. Because of scan complexity and need for very user friendly interface i decided to implement Activex object (object written in .net 2.0). Until now all was ok, so I have got activex which succesfully registers and scan documents on client - but i cannot manage with sending files to server.
My concept of sending files was like that:
- preparing Upload.aspx web page wich is used for reciving files sended by POST method and saving files in database (of course to proper save in database i need some current user context information) - in ActiveX i decided to use System.Net.HttpWebRequest object to prepare and send data the problem was third point:
- i thought that in-proc activex object would "derive" web session form web page activex is placed on - but i was wrong (or i made it wrong). Whenever i send request form Activex, in response i got login.aspx page - so it looks that new session is created and new authorization is needed.
I was trying to pass to my Activex values stored in "ASP.Net_SessionId" and ".ASPXAUTH" cookies, as i found that these are the values identifying session and athorized user - but with no luck.
I think, that becaause HTTP is stateless protocol all information needed to "connect to/share" existing session on IIS server need to be included in request data, so there must be way to add these information to request sended from my activex.
I would be very grateful, if someone could provide me information what should i add (headres/cookies/etc... ?) to my request data so it could share session from "parent" web page.
View 1 Replies
Mar 31, 2011
I have a user control which opens a new window for some item selection. Once an item is selected on that window, the item ID should be passed to a callback javascript function in the user control. In order to have a unique callback function name in the user control (it may have multiple instances on the same page), I added the user control ID to the function name as follows (defined in the ascx file):
function OnItemSelection_<%=this.ID%>(selectedItemID)
{
OnItemSelection("<%=SomeControl.ClientID%>", selectedItemID)
}
Where OnItemSelection is defined in an external js file:
function OnItemSelection(controlID, selectedItemID)
{
$(controlID).do_something(selectedItemID);
}
The issue is that now I'm not sure how the new page can call the "right" function (of the user control instance where it was opened from). The only idea I have in mind so far is passing the name of the callback function in the query string:
var CallbackFunction = function(selectedItemID)
{
window.opener.<%=Request.QueryString["CallbackFunctionName"]%>(selectedItemID);
}
or maybe just the opening user control ID:
var CallbackFunction = function(selectedItemID)
{
window.opener.OnItemSelection_<%=Request.QueryString["UserControlID"]%>(selectedItemID);
}
My questions are:
1) Is it a bad practice passing javascript function names (or user control IDs) like that (I suspect it is)?
2) What could be better way to handle this scenario? Edit: Another way I'm considering now is declaring a global variable in the user control (registering it from the code behind so it'll appear only once). Then, when opening the new window, it's possible to assign the relevant function to it (OnItemSelection_<%=this.ID%>), and call it from the new window. Seems much cleaner than passing user control data through the query string.
View 1 Replies
Apr 17, 2010
I am successful in using the AutoCompleteExtender control by make use of web serivces as the data source (ServiceMethod) to the extender control. My question is do we have any way in assining a code behind method as data source to this control.
removing the ServicePath url and assiging code behind method to ServiceMethod attribute will resolve the issue.
View 4 Replies
Jan 7, 2011
I am currently developing a project management application using ASP.NET (VB). I am nearly done with it. But whenever users select an item from drop-down list control, a post back is triggered and screen is returned to the bagining. This is very irritating at times.
So, I want to know how can I make partial postbacks so that page is not refreshed again and appropriate binding of list control with my oracle database is also made.
View 1 Replies
Jan 7, 2011
I have a page that contains a few user controls which all use an id in a querystring. I want to change this so that the page can send the id to the user control and can call a function on the user control.
Also is it possible for the user control to get the id from the page or a control on the page as its parent?
View 8 Replies
Mar 18, 2010
I just like to know how can i create my own authentication(calling the ASP .net membership, role) page with the same function as the LOGIN Control. Your wondering, why not use the Login control instead. I have my own design and i don't know how to pattern my design to the built in Login Control. I tried editing the login template, but it's pretty hard to pattern it to my design.
This is my design
Basically what would like to know how the Login Control calls for the authentication, and when authenticated, it will pass the user(full name) to my LoginView Control without any coding. Or is it possible that I remove default login button in the LOGIN Control then create my own button and trigger the authentication or validation? But if you have other suggestion that can follow my design and call the authentication, i would be happy to know.
View 3 Replies