Knowledge Base FAQ Items
Browse All Questions: |
---|
INSTALLATIONQ3000017: I want to re-install ActiveXperts Serial Port Component. I uninstalled first, but now the installation tells me that I cannot install it in the same destination directory as before. Am I doing something wrong? You are right: you cannot install the product in an existing directory. At uninstall, the original directory (default: C:\Program Files\ActiveXperts\Serial Port Component\) is NOT deleted in case there are files created/modified after the previous installation. You must delete these files/directories manually. Once the directory (C:\Program Files\ActiveXperts\Serial Port Component\) is deleted, you can re-install it in that directory. Q3000016: On 64-bit Operating Systems, can I also register the 32-bit component for my 32-bit applications? Yes, on 64-bit systems, you can register both the 64-bit component (for 64-bit applications) and the 32-bit component (for 32-bit applications). You can use the same REGSVR32.EXE command for that: REGSVR32 AxSerial64.dll REGSVR32 AxSerial32.dll Q3000035: Where can I find the ActiveXperts Serial Port Component Release Notes?
You can view the ActiveXperts Serial Port Component Release Notes by using the following URL: Q3000012: When trying to register your component DLL from the command line, REGSVR32.EXE returns the following error: 0x80070005 This is not a problem of the ActiveXperts component, but is related to the security settings of your Windows computer. Please try the following: To start the command prompt, start it from the start menu by locating the "Command Prompt" in the start menu. Then, right-click on this item and select "Run as Administrator". Then, issue the following command from the command prompt: REGSVR32.EXE AxSerial64.dll or REGSVR32.EXE AxSerial32.dll You can also try to turn off UAC (User Account Control) Q3000030: Does the ActiveXperts Serial Port Component installation overwrite existing Operating System files? No, it only installs two ActiveX component files: one 32-bit DLL (AxSerial32.dll) and one 64-bit DLL (AxSerial64.dll) that both make use of the Operating System. Q3000025: I manually registered the ActiveXperts Serial Port Component DLL file on another machine, and now I want to unregister. How can I do this? To uninstall the 64-bit component, issue the following command from the command prompt: REGSVR32 -u <path>\AxSerial64.dll To uninstall the 32-bit component, issue the following command from the command prompt: REGSVR32 -u <path>\AxSerial32.dll Q3000010: When I run Setup, I get the following error message: "Error installing iKernel.exe (0xa00)". What's wrong? Most probably, you don't have administrative privileges on the machine where you install the product. You must have local administrator rights to install ActiveXperts Serial Port Component on the computer. Q3700003: How do I know what's new in the latest version of ActiveXperts Serial Port Component? For a list of new features and fixes, see ActiveXperts Serial Port Component Release Notes. Q3000020: How can I uninstall ActiveXperts Serial Port Component? You can simple uninstall the software by using the 'Add/Remove' applet in the control panel. It will delete all files, except two: AxSerial64.dll and AxSerial32.dll. This article explains how to uninstall these files manually. The core of ActiveXperts Serial PortComponent is two DLL's: AxSerial64.dll (to be used by 64-bit applications) and AxSerial32.dll (to be used by 32-bit applications). These DLL's are shared components, which means that they might be required by other software vendors. Therefore, these DLL's are NOT unregistered/deleted from the system using the 'Add/Remove' applet automatically! To uninstall AxSerial32.dll manually on a 32-bit operating system:
To uninstall AxSerial64.dll and AxSerial32.dll manually on a 64-bit operating system:
Q3000015: Can ActiveXperts Serial Port Component be installed manually? Yes it can. To install the ActiveXperts Serial Port Component DLL on another machine, simply copy either the AxSerial64.dll (for 64-bit applications) or AxSerial32.dll (for 32-bit applications) to the target machine and issue the REGSVR32 registration command on that machine. To register the 64-bit component, issue the following command: REGSVR32 AxSerial64.dll To register the 32-bit component, issue the following command: REGSVR32 AxSerial32.dll Please note that on 64-bit systems, you can register both the 64-bit component (for 64-bit applications) and the 32-bit component (for 32-bit applications). PORTS AND DEVICESQ3100070: When I open a port, I get the following error: 30203 ("TAPI Device Manager failed to respond"). What does it mean? The Windows Telephony device name is valid,. There can be two reasons for this error:
Q3100140: I need to sense the DSR signal change. How can I do this? ActiveXperts Serial Port Component is not event driven. You need to call the QueryDSR function to check the state of the DSR signal. If you need to check the state continuously, you need to call this function regularly, probably in a separate thread. To monitor CTS (Clear-To-Send), use the QueryCTS function; to monitor DCD (Data-Carrier-Detect), use the QueryDCD function; to monitor RI (Ring-Indicator), use the QueryRI function. Q3100065: When I open a port, I get the following error: 30202 ("Cannot open specified device"). What does it mean? The means implies that the Windows Telephony device is valid, but that the associated COM port is either already in use, or does not exist. The error does NOT mean that the Windows Telephony device is invalid (that would reported as error 30201); it neither means that the Windows Telephony device is already used (that would be reported as error 30204). Q3100025: Do I need software flow control? Software flow control is only used for data transfer. By default, flow control is switched off. Devices like modems (sending/receiving to eachother) requiore software flow as soon as data transfer begins. For more details, please read FAQ item 3100010 and FAQ item Q3100015. Q3100060: When I open a port, I get the following error: 30201 ("Cannot find specified devicename"). What does it mean? This means that the Windows Telephony Device you are using, is NOT defined on the computer. You may have made a typing mistake. Error 30201 does NOT mean that the port is already in use (you would get error 30202). Q3100035: What does the ComTimeout property mean? The ComTimeout property is the timeout in milliseconds before functions ReadString, ReadBytes and ReadByte return. Q3100050: When I open a port, I get the following error: 30102 ("Unable to perform operation because the device does not exist"). What does it mean? This means that the COM port does not exist. Error 30102 does NOT mean that the port is already in use. If the port is in use, error 30103 will be reported ("Unable to perform operation because the device is already opened") instead. Q3100120: With ActiveXperts Serial Port Component, we sometimes receive incomplete strings. What is wrong? Most probably it takes to long to read strings from the device. For instance, there's a time-out before the end-of-line character is received. To fix this problem, try to increase the ComTimeout value. Q3100110: Can I play a sound file on my modem using ActiveXperts Serial Port Component? Yes, as long as your modem supports a voice command set. It is easy to find out if your modem supports voice or not: issue the 'AT+FCLASS=?'. A modem supporting voice will respond with a list of numbers that includes the number 8. To enter voice mode, issue the following command: 'AT+FCLASS=8' (or 'AT#CLS=8'). In voice mode, you can answer voice calls, playback sound files and record audio. For a complete list of voice modems commands, check your modem manual. Q3100015: What is the difference between hardware flow control and software flow control? Both are used for handshaking (see also FAQ item 3100010). With Hardware Flow Control, the receiving device sends a positive voltage along a dedicated handshaking circuit as long as it is ready to receive. When the transmitting computer receives a negative voltage, it knows to stop sending data. With Software Flow Control, the handshaking signals consist of special characters transmitted along the data circuits rather than along the hardware flow control circuits. Q3100080: I'm using a GSM modem (WaveCom Fastrack). I get the following error: 30351 ("Unexpected response from modem"). In the log file, I see some undisplayable characters beinig received from the modem. What could be the problem? Most probably, the baud rate causes the problem: COM port and modem are not sending/receving at the same speed. We stronly recommend to change the baud rate to the same speed configured for the modem. Q3100030: Can I change the baud rate for a port when it is already opened? Yes you can. Set the BaudRate property and call the UpdateCom function to apply the property change. Q3100130: Does ActiveXperts Serial Port Component trigger an event when new data has arrived? No, the component does not trigger events. All received data is buffered in memory. You need to poll for new data using a timer, or use a separate thread for receiving your data. Q3100010: What is flow control? In many scenario's, it is necessary for the transmitting device to know whether the receiving device is ready to receive information. You might, for example, be sending data to a printer, and the speed of communication may be faster than the speed of the printer. The printer will need to be able to stop the computer from sending any more chatacters until it is ready to receive them. Similary, you may be sending data from one computer to another, and the second computer cannot process the data as fast as it is coming in. In both cases, information must be sent back from receiving device to the sending device to indicate whether it is ready. This is known as 'Flow Control'. There are two types of Flow Control: Hardware Flow Control and Software Flow Control. Q3100045: Are USB devices supported? Only when the USB device provides a serial port driver. For instance, most modem manufacturers provide serial port drivers for their modems, so that the modem can be accessed through a virtual COM port. These modems can be used by ActiveXperts Serial Port Component. Q3100100: I'm transmitting through a pretty slow device. What I need is a small delay between the characters transmitted when using your WriteString function. How can I achieve this? It is easy to achieve, using the InterCharDelay property. This propery indicates the delay (in milliseconds) used by the WriteString and WriteBytes between each byte transmitted. Please note there's also another property that can be used for slower devices: PreCommandDelay. It specifies a delay (in milliseconds) used before bytes are written to the port using one of the 'Write' functions. Q3100055: When I open a port, I get the following error: 30103 ("Unable to perform operation because the device is already opened"). What does it mean? This means that the port you are attempting to open is already in use by another application. Check if there's another application that is already using the COM port. In some situations, you may want to benefit from a thing called 'port sharing', where one port can be shared by multiple applications. To benefit from 'port sharing', you must use Windows Telephony devices (like 'Standard 9600 bps Modem'). Q3100040: Can I change flow control for an open port? You can't change your hardware flow while a port is opened; you must specify the hardware flow control before you Open the port. Software flow control can be changed while a port is opened. First change the SoftwareFlowControl property, and the call the UpdateCom function to apply the property change. Q3100020: Do I need hardware flow control? This depends on the the DCE (Data Carrier Equipment), the device to which you are connected. If this device requires hardware flow control, you'll need it too. In most cases, hardware flow control is required; that's why it is enabled by default. For more details, please read FAQ item 3100010 and FAQ item Q3100015. VISUAL BASIC, VBA AND VBSCRIPTQ3200025: How do I use ActiveXperts Serial Port Component object in an Office Document (Excel, Access or Word) using VBA? Please read the following document: How to use ActiveXperts Serial Port Component with VBA (Visual Basic for Applications). This document describes how to refer to the ActiveXperts Serial Port Component library, and how to declare, create and use the objects. Q3200040: I get the following error message when running a VBScript sample: "Microsoft VBScript runtime error: ActiveX component can't create object: 'AxSerial.ComPort'" You have not installed and registered the ActiveXperts Serial Port Component ActiveX component. This component can be installed and registered automatically by running the ActiveXperts Serial Port Component installation. You can download the installation file from the ActiveXperts download site. To install the component manual, see the manual, chapter Installation (Manual). Q3200010: How do I use ActiveXperts Serial Port Component object in my Visual Basic 6 project? Please read the following item: How to use ActiveXperts Serial Port Component in Visual Basic. This document describes how to refer to the ActiveXperts Serial Port Component, and how to declare, create and use the objects. Q3200020: How do I use ActiveXperts Serial Port Component object in my VBScript program? Please read the following item: How to use ActiveXperts Serial Port Component with VBScript. This document describes how to refer to the ActiveXperts Serial Port Component, and how to declare, create and use the objects. Q3200030: I try to run the Visual Basic 6 sample project, but I get a runtime error: "User-defined type not defined". What's wrong? You must refer to the object before you can declare and create it. Go to the 'Project' menu, choose 'References...' and put the checkbox near 'ActiveXperts Serial Port Component Type Library'. HTML AND JAVASCRIPTQ3250005: Which browsers are supported with your HTML sample? The sample ONLY runs on Microsoft Internet Explorer (64/32 bit). Microsoft Edge is NOT supported. Mozilla Firefox, Google Chrome and Safari are NOT supported either. Q3250030: I want to sign the ActiveXpertsSerial Port Component module so it can be used by any browser in our network without any security alerts. How can I digitally sign the module? Please read the following article: How to digitally sign an ActiveXperts software component. Q3250040: Is it possible to use the component in an HTML page using a Mozilla FireFox browser? By default, the Mozilla FireFox browser is not configured to support sites that load ActiveX controls. By using a plugin it is possible to run the Serial Port Component control. Click here to learn how to enable Serial Port Component for your Mozilla browser. Q3250010: How can I use ActiveXperts Serial Port Component object in my HTML form on a PC? Please read the following article: Using Serial Port Component with HTML. This document describes how to refer to ActiveXperts Serial Port Component, and how to declare, create and use the objects. Q3250020: Is it possible to use the component in an HTML page on a PC? Do you have an HTML sample available? Yes it is possible. There is an online sample that shows how to use the component in an HTML page. In this sample, the ActiveXperts Serial Port Component ActiveX component is downloaded and installed automatically from the ActiveXperts web site. You get prompted to trust the activexperts.com site. You can customize this HTML sample, and let the ActiveX source point to another location by changing the 'codebase' reference inside this HTML file. To avoid prompting, please read article Q3250025. Q3250025: We are using the component within HTML/JavaScript code. The browser is Microsoft Internet Explorer. Each time the ActiveX control is loaded in the browser, a security warning pops up. Do you have any suggestion to surpress this message? There are basically three ways to avoid prompting:
VISUAL C++Q3300015: On compiling your C++ Forms demo, I get the following error: "error MSB8041: MFC libraries are required for this project. Install them from the Visual Studio installer (Individual Components tab) for any toolsets and architectures being used.". What's wrong? This means, that you have not included the MFC libraries in your Visual Studio installation. Solution:
After that, rebuild the C++ MFC Forms project Q3300010: Which Visual Studio version is required to compile the Visual C++ samples? You need Microsoft Visual Studio 2015 or higher. All sample projects are created in Visual Studio 2015 and Visual Studio 2019. If you use a newer version of Visual Studio, then Visual Studio will prompt you to convert the project file. If you use an older version of Visual Studio, you must recreate the sample projects yourself and add the source files. In all C++ files that make use of an ActiveXperts Serial Port object, you must include 'AxSerial.tlb' and 'AxSerialConstants.h'. No files need to be added to the project. Q3300030: I want to create a new Visual C++ project. Which files do I need to include in my project to make use of ActiveXperts Serial Port Component? In all C++ files that make use of an ActiveXperts Serial Port Component object, you must include 'AxSerial.tlb' and 'AxSerialConstants.h'. No files need to be added to the project. Q3300020: Can I use Visual Studio Express Edition to build the Visual C++ samples? Yes, you can, but you can only compile the Console Applications. The Forms applications make use of the Microsoft MFC framework, which is not supported by Microsoft Visual Studio Express. VISUAL BASIC .NET AND VISUAL C# .NETQ3350007: How can I use ActiveXperts Serial Port Component objects in my Visual C# .NET project? Please read the following document: Using ActiveXperts Serial Port Component with Visual C# .NET. This document describes how to refer to the SMS Component library, and how to declare, create and use the objects. Q3350030: Why am I getting the following error message when compiling your Visual Csharp .NET sample: "Cannot load type library for reference "AxSerial". Library not registered. (Exception from HRESULT: 0x8002801D (TYPE_E_LIBNOTREGISTERED)" You haven't installed and registered the ActiveXperts Serial Port Component ActiveX component properly. This component can be installed and registered automatically by running the ActiveXperts Serial Port Component installation, or by registring manually (see also FAQ Q3000015). Q3350005: How can I use ActiveXperts Serial Port Component objects in my Visual Basic .NET project? Please read the following document: Using ActiveXperts Serial Port Component with Visual Basic .NET. This document describes how to refer to the SMS Component library, and how to declare, create and use the objects. Q3350025: Why am I getting the following error message when compiling your Visual Basic .NET sample: "Namespace or type specified in the Imports 'AxSerial' doesn't contain any public member or cannot be found. Make sure the namespace or the type is defined and contains at least one public member. " You haven't installed and registered the ActiveXperts Serial Port Component ActiveX component properly. This component can be installed and registered automatically by running the ActiveXperts Serial Port Component installation, or by registring manually (see also FAQ Q3000015). Q3350003: What .NET framework version is required to run the .NET sample projects? The samples require .NET Framework 2.0 or higher. Q3350002: Which Visual Studio version is required to compile the Visual Studio .NET samples? You need Microsoft Visual Studio 2008 or higher. All sample projects are created in Visual Studio 2008. If you use a newer version of Visual Studio, then Visual Studio will prompt you to convert the project file. All .NET samples make use of .NET framework 2.0 ASP .NETQ3400007: How can I use ActiveXperts SMS Component objects in ASP .NET with Visual C# .NET? See FAQ 3350007. Q3400030: Why am I getting the following error message when compiling your ASP .NET Visual Csharp sample: "Cannot load type library for reference "AxSms". Library not registered. (Exception from HRESULT: 0x8002801D (TYPE_E_LIBNOTREGISTERED)" See FAQ 3350030. Q3400025: Why am I getting the following error message when compiling your ASP .NET Visual Basic sample: "Namespace or type specified in the Imports 'AxSms' doesn't contain any public member or cannot be found. Make sure the namespace or the type is defined and contains at least one public member. " You haven't installed and registered the ActiveXperts Serial Port Component ActiveX component properly. This component can be installed and registered automatically by running the ActiveXperts Serial Port Component installation, or by registring manually (see also FAQ Q3000015). Q3400005: How can I use the ActiveXperts SMS Component objects in ASP .NET with Visual Basic .NET? See FAQ 3350005. Q3400003: What .NET framework version is required to run the ASP .NET sample projects? See FAQ 3350003. Q3400002: Which Visual Studio version is required to compile the ASP .NET samples? See FAQ 3350002. ASPQ3500005: How do I use ActiveXperts Serial Port Component objects in my ASP project? Please read the following document: Using ActiveXperts Serial Port Component with ASP. This document describes how to refer to the ActiveXperts Serial Port Component library, and how to declare, create and use the objects. Q3500010: When using the ASP sample on a remote PC's browser, which port will be accessed: the one on the ASP Web Server, or the one on the client's PC? The ASP sample opens the port on the ASP Web Server's machine. This is because the object is instantiated on the web server. However, it is also possible to use the component on the client's PC with the browser. You must then create the object from within the client's HTML code using Javascript. Please check FAQ item 3250020 for details. Q3500015: In your ASP sample I can't see my Windows' Telephony Devices (for instance, my 'Standard 9600 bps Modem'). In all other samples, they are listed. Please advise. On the webserver, the IUSR_<computername> credentials are used for all SMS operations. The IUSR_<computername> is only member of the Guests group by default; it doesn't have sufficient permissions to query the Windows Telephony Devices. By making the IUSR_<computername> account member of the Local Administrators group, you will be able to see all Windows Telephony Devices. DELPHIQ3600010: How do I use ActiveXperts Serial Port Component objects in my Delphi project? Please read the following document: Using ActiveXperts Serial Port Component with Delphi. This document describes how to refer to the ActiveXperts Serial Port Component library, and how to declare, create and use the objects. PHPQ3650020: I'm using XAMPP to run your ActiveX component. I get the error: "Uncaught Error: Class "COM" not found in C:\Xampp\htdocs\serialport\index.php". What's wrong?
By default, COM is disabled in Xampp. You must enable COM in your PHP.INI file:
Besides that, make sure you register both 32-bit and 64-bit DLL's to avoid error "Uncaught com_exception: Failed to create COM object 'AxSerial.ComPort': Invalid syntax in C:\Xampp\htdocs\serialport\index.php". Q3650030: I'm using XAMPP to run your ActiveX component. I get the error: "Uncaught com_exception: Failed to create COM object 'AxSerial.ComPort': Invalid syntax in C:\Xampp\htdocs\serialport\index.php". What's wrong? First of all, COM is enabled on Xampp, so there's no need to modify PHP.INI. The problem is that the ActiveXperts COM component is not registered. Best is to register both 32-bit and 64-bit DLL's, so you're not dependent on the type of web-application or Xampp version (32/64 bit). The 32-bit and 64-bit ActiveX controls can both be registered at the same time without a conflict.
So, make sure you register both 32-bit and 64-bit DLL's from the command line in Admin mode: Q3650010: How do I use the ActiveXperts Serial Port Component objects with PHP? Please read the following document: Using Serial Port Component with PHP. This document describes how to refer to the ActiveXperts Serial Port Component library, and how to declare, create and use the objects. COLDFUSIONQ3670010: How do I use the ActiveXperts Serial Port Component objects with ColdFusion? Please read the following document: Using ActiveXperts Serial Port Component with ColdFusion. This document describes how to refer to the ActiveXperts Serial Port Component library, and how to declare, create and use the objects. LICENSINGQ3700060: Can I renew maintenance contract after maintenance has expired? Renewals that come in after the maintenance has expired will be backdated to start from the old expiry date. Also, you are only able to get Technical Support and Software Maintenance when your support contract is valid. Q3700035: I received an activation key. How do I activate the product now? Please read the manual, chapter: Purchase and Product Activation. Q3700070: Is it possible to obtain the sourcecode of your product? No, we do not ship or sell the source code of our products. The only source code that is included with our products are code samples shipped, to show how to use the component in various programming languages. Q3700010: What happens after the 30 day trial period? After 30 days of evaluation, you won't be able to call the Open method anymore. If you call this function, nothing happens and LastError will indicate a license expiration. Q3700050: How much does a maintenance contract cost? During the first (1) year after purchase, Maintenance is free. After this free Maintenance year, Licensee may purchase Maintenance. The price for the Maintenance Agreement is 15% of the price that was payed for the product. Customers choose between one-, two- and three years Maintenance Agreement renewal. Please read the Maintenance Agreement document for more details. Q3700005: Where can I find detailed information about licensing? To learn about the different license options for ActiveXperts Serial Port Component, click here. Q3700030: Where can I purchase the product? For detailed sales information, check the Sales webpage. Q3700025: If I buy a license, do I have to pay for future releases? ActiveXperts' Maintenance Agreement entitles customers to use ActiveXperts' technical support services, and to receive all product upgrades, free of charge, during a specified Agreement duration. The Maintenance Agreement applies to all ActiveXperts products. After purchase, you get 1 year Maintenance for free After this free Maintenance period, Licensee may purchase Maintenance. The price for the Maintenance Agreement is 15% of the price that was payed for the product. Read our Maintenance Agreement in PDF format. Q3700022: How to deploy the component to multiple computers once the Distribution License is purchased? Please read the following online article: How to distribute an ActiveXperts Component. Q3700020: What is a 'Distribution License'? The 'Distribution License' allows you to 'bundle' the component with your own software. It allows you to ship the product to an unlimited number of customers for an unlimited period of time. There are no limitations to functionality of the software. Click here for more information about the ActiveXperts Serial Port Component licensing options. Once you have obtained a Distribution License, you receive a key that you can use on the target computers. Click here to read more about how to distribute this key with the core product DLL on the target computers. Q3700015: What is the difference between a 'Standard License' and a 'Professional License' ? Click here for more information about the ActiveXperts Serial Port licensing options. MISCELLANEOUSQ3800010: Is ActiveXperts Serial Port Component thread-safe? Yes, ActiveXperts Serial Port Component is 100% thread-safe. It can be used by multiple applications simultaneously, and each individual application can have multiple simultaneous threads using ActiveXperts Serial Port Component. This doesn't mean that COM ports can be shared by different threads; usually this is not possible. Q3800020: In the documentation it says that it supports simultaneous writes to multiple com ports, but I cannot find this in any example? Basically this is how it works (illustrated by a VBScript sample): Set o1 = CreateObject( "AxSerial.Comport" ) Set o2 = CreateObject( "AxSerial.Comport" ) o1.Device = "COM1" o1.DeviceSpeed = 19200 o1.Open o2.Device = "COM2" o2.DeviceSpeed = 19200 o2.Open Q3800015: I want to send a sequence of non-displayable data to the comport. How can I do this? Use the WriteByte function. It sends one byte of data to the comport. Usually, you call 'WriteString "ATZ"' to initialize a modem. You can also use the following commands to accomplish this: obj.WriteByte 97 obj.WriteByte 116 obj.WriteByte 122 obj.WriteByte 13 ' 13 means: vbCr, the carriage character |