<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Catalyst Development &#187; SocketTools</title>
	<atom:link href="http://blog.catalyst.com/archives/category/sockettools/feed" rel="self" type="application/rss+xml" />
	<link>http://blog.catalyst.com</link>
	<description>Applications, Components and Libraries For Software Developers</description>
	<lastBuildDate>Fri, 18 Nov 2011 21:34:28 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.4</generator>
		<item>
		<title>SocketTools 7.2 Released</title>
		<link>http://blog.catalyst.com/archives/172</link>
		<comments>http://blog.catalyst.com/archives/172#comments</comments>
		<pubDate>Fri, 18 Nov 2011 20:33:28 +0000</pubDate>
		<dc:creator>Catalyst</dc:creator>
				<category><![CDATA[Product Updates]]></category>
		<category><![CDATA[SocketTools]]></category>

		<guid isPermaLink="false">http://blog.catalyst.com/?p=172</guid>
		<description><![CDATA[SocketTools 7.2 has been released and is a recommended update for developers who are currently using version 7.0 or 7.1. This update includes a new text messaging (SMS gateway) component, as well as new features, fixes and improvements to existing components. We&#8217;ve added support for secure connections using TLS version 1.1 and 1.2, support for [...]]]></description>
			<content:encoded><![CDATA[<p>SocketTools 7.2 has been released and is a recommended update for developers who are currently using version 7.0 or 7.1. This update includes a new text messaging (SMS gateway) component, as well as new features, fixes and improvements to existing components. We&#8217;ve added support for secure connections using TLS version 1.1 and 1.2, support for compressed HTTP downloads, and there&#8217;s a number of new functions, properties and methods that we&#8217;ve added to our e-mail related components to make them easier to work with. We&#8217;ve also made some significant improvements to the documentation, and by popular request, we&#8217;ve included printable PDF versions of the help as well. </p>
<p>This is a free update for customers using version 7.x, and is a complete package that replaces the previous version. Note that because of the version change, we recommend that you uninstall the previous version of SocketTools before installing 7.2. This update also applies to the related products such as SocketWrench, SocketTools File Transfer and SocketTools Internet Mail.</p>
<p>You can download it using the same link that you were provided with when you ordered the software. The <a href="http://www.catalyst.com/products/sockettools/release.html">release notes</a> are available on our website.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.catalyst.com/archives/172/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SocketTools 7.1 Released</title>
		<link>http://blog.catalyst.com/archives/165</link>
		<comments>http://blog.catalyst.com/archives/165#comments</comments>
		<pubDate>Thu, 07 Jul 2011 19:34:31 +0000</pubDate>
		<dc:creator>Catalyst</dc:creator>
				<category><![CDATA[Product Updates]]></category>
		<category><![CDATA[SocketTools]]></category>

		<guid isPermaLink="false">http://blog.catalyst.com/?p=165</guid>
		<description><![CDATA[SocketTools 7.1 has been released and is a recommended update for developers who are currently using 7.0. This new release includes some general network performace improvements, FTP/SFTP and SSH changes to improve server compatibility and a number of fixes. This is a free update for licensed developers, and is a complete package that replaces the [...]]]></description>
			<content:encoded><![CDATA[<p>SocketTools 7.1 has been released and is a recommended update for developers who are currently using 7.0. This new release includes some general network performace improvements, FTP/SFTP and SSH changes to improve server compatibility and a number of fixes. This is a free update for licensed developers, and is a complete package that replaces the previous version. Note that because of the version change, we recommend that you uninstall version 7.0 before installing 7.1. This update also applies to the related products such as SocketWrench, SocketTools File Transfer and SocketTools Internet Mail.</p>
<p>You can download it using the same link that you were provided with when you ordered the software. The <a href="http://www.catalyst.com/products/sockettools/release.html">release notes</a> are available on our website.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.catalyst.com/archives/165/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>World IPv6 Day</title>
		<link>http://blog.catalyst.com/archives/161</link>
		<comments>http://blog.catalyst.com/archives/161#comments</comments>
		<pubDate>Wed, 08 Jun 2011 22:12:39 +0000</pubDate>
		<dc:creator>Catalyst</dc:creator>
				<category><![CDATA[Internet Protocols]]></category>
		<category><![CDATA[SocketTools]]></category>

		<guid isPermaLink="false">http://blog.catalyst.com/?p=161</guid>
		<description><![CDATA[Today has been designated as World IPv6 Day, when the largest Internet backbones and many of the major Internet search engines and social network sites will test IPv6 deployment. It was originally promoted earlier this year by Akamai, Facebook, Google, Limelight and Yahoo to determine if there were any major problems with IPv6 connectivity and [...]]]></description>
			<content:encoded><![CDATA[<p>Today has been designated as World IPv6 Day, when the largest Internet backbones and many of the major Internet search engines and social network sites will test IPv6 deployment. It was originally promoted earlier this year by Akamai, Facebook, Google, Limelight and Yahoo to determine if there were any major problems with IPv6 connectivity and to generally promote the transition away from the legacy IPv4 protocol that is still predominantly used.</p>
<p>For those of you with an IPv6 connection, you can test that connection to us using ipv6.catalyst.com. If your IPv6 connectivity is limited to tunneling using Teredo,  most browsers will not be able to connect to the site because they won’t resolve a host name to an IPv6 address if Teredo is the only IPv6 interface configured on the local system. Note that SocketTools works a bit differently. If a host name only has an IPv6 address associated with it, it will attempt to connect to the system, even if the only IPv6 interface is a Teredo tunnel.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.catalyst.com/archives/161/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SocketTools 7 NewsFeed Control</title>
		<link>http://blog.catalyst.com/archives/157</link>
		<comments>http://blog.catalyst.com/archives/157#comments</comments>
		<pubDate>Thu, 12 May 2011 21:41:36 +0000</pubDate>
		<dc:creator>Catalyst</dc:creator>
				<category><![CDATA[SocketTools]]></category>

		<guid isPermaLink="false">http://blog.catalyst.com/?p=157</guid>
		<description><![CDATA[SocketTools 7 introduces a new component that makes it simple to access news feeds that use RSS. Really Simple Syndication (RSS) is a collection of standardized formats that are used to publish information about content that is frequently changed. A news feed is published in XML format, which contains one or more items that includes [...]]]></description>
			<content:encoded><![CDATA[<p>SocketTools 7 introduces a new component that makes it simple to access news feeds that use RSS. Really Simple Syndication (RSS) is a collection of standardized formats that are used to publish information about content that is frequently changed. A news feed is published in XML format, which contains one or more items that includes summary text, hyperlinks to source content and additional metadata that is used to describe the item. News feeds can be used for a variety of purposes, including providing updates for weblogs, news headlines, video and audio content. RSS can also be used for other purposes, such as a software updates, where new updates are listed as items in the feed.<span id="more-157"></span></p>
<p>News feeds can be accessed remotely from a web server, or locally as an XML formatted text file. The source of the feed is determined by the URI scheme that is specified. If the http or https scheme is specified, then the feed is retrieved from a web server. If the file scheme is used, the feed is considered to be local and is accessed from the disk or local network. The News Feed control provides an interface that enables you to open a feed by URL and iterate through each of the items in the feed or search for a specific feed item. The control also provides a method that can be used to parse a string that contains XML data in RSS format, where the feed may have been retrieved from other sources such as a database.</p>
<p>Each SocketTools Edition includes a news feed component. The Library Edition introduces a new API that can be used to access a feed with just a few function calls. The .NET Edition and ActiveX Edition include high-level components that make it simple to download a feed and enumerate each of the articles in the feed. You can download a free evaluation of SocketTools from <a href="http://go.catalyst.com/download">go.catalyst.com/download</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.catalyst.com/archives/157/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SocketTools 7.0 Released</title>
		<link>http://blog.catalyst.com/archives/146</link>
		<comments>http://blog.catalyst.com/archives/146#comments</comments>
		<pubDate>Thu, 03 Mar 2011 16:04:21 +0000</pubDate>
		<dc:creator>Catalyst</dc:creator>
				<category><![CDATA[Product Updates]]></category>
		<category><![CDATA[SocketTools]]></category>

		<guid isPermaLink="false">http://blog.catalyst.com/?p=146</guid>
		<description><![CDATA[We’re pleased to announce that SocketTools 7.0 and SocketWrench 7.0 have been released and are available for download. Upgrade pricing is available for developers who are currently using version 6.0 or earlier, and those with active SocketTools Subscriptions can download a free update to the new release. We would also like to thank those developers [...]]]></description>
			<content:encoded><![CDATA[<p>We’re pleased to announce that SocketTools 7.0 and SocketWrench 7.0 have been released and are available for download. Upgrade pricing is available for developers who are currently using version 6.0 or earlier, and those with active SocketTools Subscriptions can download a free update to the new release. We would also like to thank those developers who beta tested for us, your participation and feedback was a significant part of improving SocketTools.</p>
<p><a href="http://go.catalyst.com/download">Download Product</a><br />
<a href="http://go.catalyst.com/help">Online Documentation</a><br />
<a href="http://go.catalyst.com/upgrade">Order Upgrade</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.catalyst.com/archives/146/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SocketTools Native 64-bit Support</title>
		<link>http://blog.catalyst.com/archives/135</link>
		<comments>http://blog.catalyst.com/archives/135#comments</comments>
		<pubDate>Wed, 26 Jan 2011 23:22:27 +0000</pubDate>
		<dc:creator>Catalyst</dc:creator>
				<category><![CDATA[SocketTools]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://blog.catalyst.com/?p=135</guid>
		<description><![CDATA[One of the most requested features for SocketTools 7 is native 64-bit support for Windows. Although most Windows installations today continue to be 32-bit, along with the vast majority of application software, there is no question that 64-bit platforms are growing in popularity. It’s estimated that approximately 50% of the Windows 7 installations are the [...]]]></description>
			<content:encoded><![CDATA[<p>One of the most requested features for SocketTools 7 is native 64-bit support for Windows. Although most Windows installations today continue to be 32-bit, along with the vast majority of application software, there is no question that 64-bit platforms are growing in popularity. It’s estimated that approximately 50% of the Windows 7 installations are the 64-bit version, and virtually all desktop and laptop PCs sold in the past 5 years have 64-bit processors.<span id="more-135"></span></p>
<p>Originally we had planned to release each of the SocketTools 7 Editions in two different versions, one 32-bit and one for 64-bit development. Based on feedback from our customers and the recognition that 64-bit development is in a transition period, we’ve decided to include both 32-bit and 64-bit components in the same product. You will be able to choose the versions that you want to install, with the defaults selected based on the system that you’re installing SocketTools on.</p>
<p>For those who are using the SocketTools .NET Editions and the Visual Editions, there will be virtually no coding changes required; the components will work in the same way, regardless of which version is being used. Because they have a higher-level interface, you don&#8217;t need to worry about the core changes that were made to support 64-bit platforms. With .NET development, you&#8217;ll be able to build applications that explicitly target either the x86 or x64 platforms, or both. The most significant changes you&#8217;ll probably need to make are with how your installer deploys your application, since it will need to be aware of whether or not the installation is being performed on a 32-bit or 64-bit system.</p>
<p>For developers who are using the Library Edition, there will be more significant changes because of the lower-level interface presented by the SocketTools API. In particular, the size of pointers and handles are different based on whether you&#8217;re building your application for 32-bit or 64-bit systems. The signatures for some of the SocketTools functions have changed to accommodate this, and it may require that you modify your code. This is really a general programming issue, so it&#8217;s not something unique to SocketTools, but it is something to be aware of if you&#8217;re planning to port your software to 64-bit Windows.</p>
<p>By including both 32-bit and 64-bit components in each of the SocketTools 7 Editions, you’ll have the best of both worlds. You can continue to develop and maintain your existing 32-bit software, while planning your transition to native 64-bit support that is clearly the future direction for the Windows platform.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.catalyst.com/archives/135/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SocketTools 7 Beta Test</title>
		<link>http://blog.catalyst.com/archives/131</link>
		<comments>http://blog.catalyst.com/archives/131#comments</comments>
		<pubDate>Mon, 10 Jan 2011 16:03:10 +0000</pubDate>
		<dc:creator>Catalyst</dc:creator>
				<category><![CDATA[SocketTools]]></category>

		<guid isPermaLink="false">http://blog.catalyst.com/?p=131</guid>
		<description><![CDATA[We’re pleased to announce the beginning of the SocketTools 7 Beta Test. If you’re interested in working with the next release of SocketTools and providing feedback on its features, you can join the testing group. You don’t need to be a current customer to join the beta test, but we have a limited number of [...]]]></description>
			<content:encoded><![CDATA[<p>We’re pleased to announce the beginning of the SocketTools 7 Beta Test. If you’re interested in working with the next release of SocketTools and providing feedback on its features, you can join the testing group. You don’t need to be a current customer to join the beta test, but we have a limited number of slots and would prefer developers who are experienced with the product. Please note that this will require that you sign a non-disclosure agreement (NDA) to remain in force until the product is released.<span id="more-131"></span></p>
<p>To become a member of the beta testing group, please use the following link (this will be removed when beta test concludes). Once your application is received, you’ll be emailed a PDF that contains the NDA. After you email or fax the signed NDA back to us, you’ll be sent the link to the private section of the forums for beta testers and download links for the current build of the software.</p>
<p>It is recommended that you don’t install the beta release on a production system. The libraries and components are also set to periodically expire, so they should not be used in release software. Updates to the beta builds are planned for approximately every two weeks, and you’ll receive an email notification when a new build is uploaded. For everyone who joins us, thank you for your interest in making SocketTools an even better product!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.catalyst.com/archives/131/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Introducing IPv6 in SocketTools 7</title>
		<link>http://blog.catalyst.com/archives/128</link>
		<comments>http://blog.catalyst.com/archives/128#comments</comments>
		<pubDate>Fri, 17 Dec 2010 23:26:35 +0000</pubDate>
		<dc:creator>Catalyst</dc:creator>
				<category><![CDATA[Internet Protocols]]></category>
		<category><![CDATA[SocketTools]]></category>

		<guid isPermaLink="false">http://blog.catalyst.com/?p=128</guid>
		<description><![CDATA[One of the new features in SocketTools 7 will be support for IPv6 networks, in addition to IPv4 that most developers are already familiar with. Although IPv6 has been getting a lot of attention recently, it’s actually been around for quite a while now. Work on the protocol began in the early 1990’s and there [...]]]></description>
			<content:encoded><![CDATA[<p>One of the new features in SocketTools 7 will be support for IPv6 networks, in addition to IPv4 that most developers are already familiar with. Although IPv6 has been getting a lot of attention recently, it’s actually been around for quite a while now. Work on the protocol began in the early 1990’s and there have been public IPv6 networks that have existed for over a decade now. However, up to this point it has never gained much traction and IPv4 remains the dominant protocol used over the Internet. This is in the process of changing however, because we’re rapidly approaching the exhaustion of new IPv4 addresses. If you develop software that accesses the Internet, this affects you.<span id="more-128"></span></p>
<p>It’s predicted that the last of the large blocks of available IPv4 addresses will be allocated by the Internet Assigned Numbers Authority (IANA) early in 2011 and the regional registries will exhaust their pool of new addresses within a few years. The widespread adoption of classless routing (CIDR) and network address translation (NAT) delayed the inevitable exhaustion of IPv4 addresses, but we’re rapidly approaching the point where the transition to IPv6 will be required to accommodate the ever increasing number of devices connected to the Internet.</p>
<p>Fortunately, the transition for developers using SocketTools will be fairly simple. Most of the real complexity in dealing with both IPv4 and IPv6 is handled internally, although there are some important considerations when updating your software.</p>
<p>1. If your application stores IP addresses in a database, configuration file, etc. then you need to make sure that your program will recognize both IPv4 and IPv6 formatted addresses. If your program is written to only recognize IPv4 addresses in dotted notation, this will create problems for you with IPv6 because it uses a completely different format. Instead of a sequence of four numbers separated by periods, IPv6 consists of hexadecimal values separated by colons. So while an IPv4 address looks like 192.168.0.20, an IPv6 address will looks something like fd7c:2f6a:4f4f:ba34::a32 and can be much longer than an IPv4 address. You’ll want to allocate at least 46 characters to store a full IPv6 address.</p>
<p>2. If your application allows the user to input an IPv4 address, then you’ll need to change that code to accept both address formats. If you’re using some kind of masked input that expects four individual numbers that are in the range of 0-255, then that code will need to be rewritten because.</p>
<p>3. Your application uses the SocketTools Library Edition and stores addresses as 32-bit integer values, that code will need to be changed.  There are several API functions in SocketTools 6.0 and earlier versions that expect an IP address to be stored in a DWORD (unsigned 32-bit integer) variable. In SocketTools 7, those functions have been changed to use a new type named INTERNET_ADDRESS that is capable of representing both IPv4 and IPv6 addresses.</p>
<p>If your software is designed to work with both host names and IP addresses, and you don’t make any assumptions about the format of the address, then there are few changes that you’d need to make. The SocketTools functions and methods that accept either host names or addresses will automatically recognize the difference in formats and act accordingly. Because a host name can resolve to either an IPv4 or IPv6 address, SocketTools will normally choose the IPv4 address whenever possible. For example, if host name www.company.com has both an IPv4 and IPv6 address assigned to it (which will be common, particularly during the transition period to IPv6) then SocketTools will prefer the IPv4 address for backwards compatibility. However, if that domain only has an IPv6 address, then SocketTools will use IPv6 to establish the connection. There’s also an option that you can specify which will force SocketTools to always use IPv6 if necessary.</p>
<p>Because it’s likely you’ll need to continue to support older Windows platforms, SocketTools will also automatically handle situations where an IPv6 stack is not installed, and it compensates for some internal differences between the various versions of Windows. The most complete support for IPv6 is available on Windows 7 and Windows Server 2008. You can install an IPv6 stack on Windows XP and Windows Server 2003, however it does not come pre-installed. There is also a preliminary version of an IPv6 stack that was made available for Windows 2000, however Microsoft never released it as an official update for the operating system.</p>
<p>We recommend that all developers begin looking into making the change to support IPv6, and you’re welcome to join the SocketTools 7 Beta Test that will be starting in January. If you have any questions about IPv6 support (or any of the other features in version 7) join us on our technical support forums.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.catalyst.com/archives/128/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SocketTools 6.0 Support</title>
		<link>http://blog.catalyst.com/archives/126</link>
		<comments>http://blog.catalyst.com/archives/126#comments</comments>
		<pubDate>Tue, 30 Nov 2010 19:21:20 +0000</pubDate>
		<dc:creator>Catalyst</dc:creator>
				<category><![CDATA[Product Updates]]></category>
		<category><![CDATA[SocketTools]]></category>

		<guid isPermaLink="false">http://blog.catalyst.com/?p=126</guid>
		<description><![CDATA[We’ve been hard at work with the next version of SocketTools and plan for it to be released in the first quarter of 2011. There will be some significant changes in the next release, such as native support for 64-bit platforms and IPv6. We’re doing everything we can to make the transition as seamless as [...]]]></description>
			<content:encoded><![CDATA[<p>We’ve been hard at work with the next version of SocketTools and plan for it to be released in the first quarter of 2011. There will be some significant changes in the next release, such as native support for 64-bit platforms and IPv6. We’re doing everything we can to make the transition as seamless as possible for developers who are currently using 6.0, but some coding changes will be required to accommodate those differences. For example, IPv6 addresses have a completely different format than the current IPv4 addresses you’re all familiar with, so any program that allows a user to input an IP address or stores an address needs to be reviewed. However, because of these changes, a lot of developers have been asking about what our plans are to continue to support for version 6.0, after the next version is released.<span id="more-126"></span></p>
<p>We understand that most developers can’t immediately switch to the current release, and because SocketTools 7 introduces some very fundamental changes to the product, we need to continue to provide support for version 6.0. We’ve decided to extend the support period for version 6.0, with its end-of-life scheduled for December 31, 2012. Free support will continue to be available after that date, but that will mark the end of paid support and new or renewed support agreements will not be available for version 6.0 from that point forward. This should give everyone almost two years to migrate to the next release and prepare their applications for IPv6 support and/or native 64-bit builds of their software.</p>
<p>Once the SocketTools 7 beta starts in January, the version 6.0 codebase will be feature-locked from that point forward. The only code changes will be to address critical errors, such as bugs that would cause a component to crash (and fortunately those are extremely rare). Any new feature requests would be considered for version 7.0, but won’t be back-ported. At this time, because the current 6.0 release has been very stable, we don’t plan any future service pack releases. That may change if a new critical defect is found in one or more of the components, but right now version 6.0 build 6030 is considered to be the last stable release of the SocketTools 6 product line.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.catalyst.com/archives/126/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Third-party Compilers</title>
		<link>http://blog.catalyst.com/archives/115</link>
		<comments>http://blog.catalyst.com/archives/115#comments</comments>
		<pubDate>Thu, 14 Oct 2010 17:23:26 +0000</pubDate>
		<dc:creator>Catalyst</dc:creator>
				<category><![CDATA[General Information]]></category>
		<category><![CDATA[SocketTools]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://blog.catalyst.com/?p=115</guid>
		<description><![CDATA[One of the questions that we often get about the SocketTools Library Edition is about support for other C/C++ compilers and third-party languages. As a collection of standard dynamic link libraries (DLLs), SocketTools can be used by virtually any programming language available for the Windows platform. The documentation is primarily focused around Visual C++ development [...]]]></description>
			<content:encoded><![CDATA[<p>One of the questions that we often get about the SocketTools Library Edition is about support for other C/C++ compilers and third-party languages. As a collection of standard dynamic link libraries (DLLs), SocketTools can be used by virtually any programming language available for the Windows platform. The documentation is primarily focused around Visual C++ development because that’s what the majority of developers who use the Library Edition are working with, but it’s by no means limited to just Microsoft’s compilers. As long as your favorite language is capable of calling functions in the Windows API, you can use the SocketTools Library Edition.<span id="more-115"></span></p>
<p>When we designed the API for SocketTools, we wanted to make it as similar to the Windows API, with similar function naming conventions and using only common data types and simple structures whenever possible. For example, instead of passing around pointers to complex context structures as some APIs do, all of the SocketTools functions using handles. We explicitly avoided using certain C/C++ constructs like unions, and use common scalar types (integers, characters, etc.) for most parameters and structure members. The goal was to make the API simple to use, reducing the overall learning curve and make it easy to use in other languages that may not have the same kind of language features that C/C++ does. For that same reason, the SocketTools Library Edition DLLs are not ActiveX DLLs that require the use of COM. However, we do include an embedded type library as a resource in the DLL that allows it to be directly referenced by Visual Basic (this makes things easier for VB6 developers who prefer to use DLLs rather than ActiveX controls).</p>
<p>If you’re interested in using SocketTools with a non-Microsoft C/C++ compiler, it should be fairly easy to use the libraries, particularly if the compiler supports the most common Microsoft extensions. The C++ classes do not require the use of MFC or ATL, however if exists, they will take advantage of it. We include import libraries in both COFF and OMF formats; while most compilers today use COFF, the Borland C++ compilers continue to use OMF, so you would need to link against those libraries.</p>
<p>For languages other than C/C++, we also provide constant and function declarations for Visual Basic 6.0, PowerBASIC, and Delphi. We also include P/Invoke declarations for Visual Basic .NET and C#. For languages that aren’t directly supported, usually the function declarations for one of these languages can get you started.</p>
<p>It definitely helps if you have at least a cursory understanding of ANSI C and the common data types that are used. If your programming language has documentation on how to call functions in the Windows API, you can also use that as a resource to learn what needs to be done for SocketTools. For example, if you need to know how your language handles passing a null-terminated string to a function, look at how you would call the GetFileAttributes function in your language. If you need to know how to pass a string buffer to a function that changes its value, check how you would call the GetCurrentDirectory function.</p>
<p>Of course, if you have any questions you can join our technical support forums and we’ll be happy to help. We may not have experience with the particular language that you’re using, but we can still provide guidance on what the SocketTools function expects and offer suggestions as to how you can get your program working.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.catalyst.com/archives/115/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

