Communicate with Web Servers from a client application using HTTP and HTTPS.
Q: Can I use this product from an ASP page to gather content for a dynamic display?
A: Yes, but Microsoft cautions against using WININET.DLL on as ASP page (Dart’s Web control is our only product that does not implement it’s protocol from scratch, because when it was created WININET was the only way we could support HTTPS for our users). Largely because of this server-side limitation, we developed the PowerTCP Web Enterprise Tool that was written from scratch, using Microsoft’s Crypto API to implement the HTTPS part.
Back to Top
Q: Can I use this product to transfer files securely?
A: Yes, HTTPS is perfect for transferring a file securely.
Back to Top
Q: Can you give me an idea of what I’d use the Web Tool for?
A: Sure. At Dart, we were spending a lot of time manually submitting changed web pages to the popular search engines. So we looked at how each engine formatted it’s HTTP POST to submit a page, and we created a simple app that allows our Marketing Rep to select what pages should be submitted to which search engines. When the “Go” button is pushed, each portal gets a POST command that includes the URL of our changed page.
Back to Top
Q: Do your HTTP products support Client Authentication?
A: The WebASP control, found in the Web Enterprise Tool, has full support for Client Authentication while the Web control, found in the Web Tool, does not.
Back to Top
Q: Do your products support Microsoft Proxy(NTLM Authentication)?
A: The Web control found in the Web Tool and the Web Enterprise Tool can be used with Microsoft Proxy. The WebASP control found in the Web Enterprise Tool will not work with Microsoft Proxy.
Back to Top
Q: How do I deploy Excel spreadsheets that use PowerTCP ActiveX controls?
A: Unfortunately, there is no consistent model for 3rd party component support across Office products and versions. The recommended usage in Excel is to use the product as a reference rather than inserting it as a control. Also, if the spreadsheet ever had a PowerTCP control inserted at any previous time, that data was cached by Excel and a new spreadsheet will be required. When deploying to users, please refer to "Distribution under Internet Information Server" in the documentation for instructions as the technique is the same.
Back to Top
Q: I have a web page that embeds your ActiveX control that works on my development machine. On another machine, a red 'X' appears or the controls shows the Trial Message.
A: The problem is that a runtime license needs to be provided for the control. Resolution: Get LPK_TOOL.EXE from Microsoft. You can find it in their Cabinet Development kit. It is also on one of the CDs that comes with Visual Studio. Use the LPK_TOOL to create an .lpk file for YOUR control. We can't stress YOUR control enough. In other words, let's say that you have a control called MyControl that contains several Dart controls. When choosing the control in the LPK_TOOL listbox, choose MyControl, NOT the Dart Controls. Again, we can't stress this part enough as it is ALWAYS the part that is missed. Add the following to your document BEFORE any other objects are declared. Make sure LPKNAME.LPK is the name of YOUR lpk: <OBJECT CLASSID=clsid:5220cb21-c88d-11cf-b347-00aa00a28331> <PARAM NAME='LPKPath' VALUE='LPKNAME.LPK'>
Back to Top
Q: I want to display a web page that I retrieved with the Web control or the WebASP control just like a Web browser, do you have a control for that?
A: No. Our products are designed to retieve information from the Web and assist you in extracting information from those pages. We do not have a product that will graphically display the information you retrieved (like Internet Explorer). One option is to use Microsoft's WebBrowser control to load content. For example, you could drag and drop the control onto a form and then use the following: WebBrowser1.Document.body.innerHTML = sHTML The value of sHTML is the HTML text returned by one of our products.
Back to Top
Q: I want to use your control in a non-VB environment (e.g. Sybase or Borland) AND create it dynamically. It works on my development machine, but elsewhere it throws a license error.
A: PowerTCP uses what is known as ClassFactory2 licensing. This is a system developed by Microsoft as part of the COM architecture. All of the major development environments that we use support this type of licensing when a control is placed on a form, however, only VB or VBA type environments support it when the control is 'created' without a form. By created, this means Dimming as New, not CreateObject. Of the other environments, we currently only provide direct support only for dynamic usage in Visual C++. See the component wrappers for the code needed to instantiate an object with a license. ( Example: ITcp.h and ITcp.cpp included with the sample projects ) If you absolutely HAVE to use our products in a project without a form, you will need to get direction from the company that makes the environment ( Example: Borland, Sybase ) on how to use COM objects that require ClassFactory2 licensing.  Support for these environments is currently unavailable through Dart.
Back to Top
Q: I’m building a secure e-commerce solution for transferring sensitive credit-card information. Can I use your product?
A: Yes, the Web control and the WebASP control will POST information securely. If you need to accept HTTPS connections, however, you need the PowerTCP WebServer Tool.
Back to Top
Q: In Powerbuilder, the hourglass cursor does not persist when the Dart control is busy. How can I keep the hourglass?
A: Unlike other environments, the interface is automatically disabled when the cursor changes to an hourglass in Powerbuilder.

Including the code below will allow the hourglass to persist, but it will not automatically disable the interface. To produce the usual hourglass behavior, the interface must be explicitely disabled and enabled by the user.

//In the external global function declarations
FUNCTION ulong SetCapture(ulong a) LIBRARY "user32.dll"
FUNCTION boolean ReleaseCapture()
LIBRARY "user32.dll"

//In the script
ulong ll_handle, ll_rc
ll_handle = Handle(this)
ll_rc = SetCapture(ll_handle)

//after done

Back to Top
Q: Is the free trial a 'full version'?
A: Yes. Your trial download is identical to the purchased product. The only difference is the trial download will only work for 30 days (in the case of ActiveX products) or will work for 7 days between each rebuild (for .NET products).
Back to Top
Q: Is this product interoperable with the .NET framework?

Although the product may work with the .NET framework, it is not recommended no supported by our technical staff. PowerTCP for ActiveX products were not made to be used with the .NET framework and some features or versions of the framework may be incompatible. We do offer a line of PowerTCP for .NET products that are updated for continued compatibility within .NET.

Back to Top
Q: Why am I getting a Type Mismatch error in VBScript?
A: When using our controls in VBScript, you must specify optional parameters to prevent Type Mismatch errors.
For example, to zip a file with the FileStore, you need to create a SpanSettings instance:

Dim span
Set span = CreateObject("Dart.SpanSettings.1")
Zip1.FileStore.Zip("c:\Test\", span)

Back to Top
Q: Can I use the ActiveX controls in a scripting language such as VBScript?

Yes, in most environments the ActiveX controls can be used in a scripting engine such as VBScript.

However, while the controls will work on 64 bit machines in compiled environments such as VB6 and VC++, they are limited to 32 bit Operating Systems in scripting environments.

Back to Top
Q: Why do I see an 'Error accessing the registry' message in VB6?
A: This error will occur on Windows Vista and Windows 7 machines when User Account Control (UAC) is on and VB6 tries to write to an inaccessible part of the registry.

You will see this error message when an ActiveX control is used for the first time. This may be when a project using the control is opened, or when the control is selected to add to the Toolbox.

After the initial failure, VB6 will select an alternate registry location to write to, and subsequent uses of the control will not produce the error.

Back to Top