<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Deploying Commercial PyQt Applications — PyQt 4.8.3 Reference Guide</title> <link rel="stylesheet" href="_static/default.css" type="text/css" /> <link rel="stylesheet" href="_static/pygments.css" type="text/css" /> <script type="text/javascript"> var DOCUMENTATION_OPTIONS = { URL_ROOT: '', VERSION: '4.8.3', COLLAPSE_MODINDEX: false, FILE_SUFFIX: '.html', HAS_SOURCE: true }; </script> <script type="text/javascript" src="_static/jquery.js"></script> <script type="text/javascript" src="_static/doctools.js"></script> <link rel="shortcut icon" href="_static/logo_tn.ico"/> <link rel="top" title="PyQt 4.8.3 Reference Guide" href="index.html" /> <link rel="next" title="The PyQt Build System" href="build_system.html" /> <link rel="prev" title="Selecting Incompatible APIs" href="incompatible_apis.html" /> </head> <body> <div class="related"> <h3>Navigation</h3> <ul> <li class="right" style="margin-right: 10px"> <a href="genindex.html" title="General Index" accesskey="I">index</a></li> <li class="right" > <a href="modindex.html" title="Global Module Index" accesskey="M">modules</a> |</li> <li class="right" > <a href="build_system.html" title="The PyQt Build System" accesskey="N">next</a> |</li> <li class="right" > <a href="incompatible_apis.html" title="Selecting Incompatible APIs" accesskey="P">previous</a> |</li> <li><a href="index.html">PyQt 4.8.3 Reference Guide</a> »</li> </ul> </div> <div class="document"> <div class="documentwrapper"> <div class="bodywrapper"> <div class="body"> <div class="section" id="deploying-commercial-pyqt-applications"> <span id="ref-deploy-commercial"></span><h1>Deploying Commercial PyQt Applications<a class="headerlink" href="#deploying-commercial-pyqt-applications" title="Permalink to this headline">ΒΆ</a></h1> <p>When deploying commercial PyQt applications it is necessary to discourage users from accessing the underlying PyQt modules for themselves. A user that used the modules shipped with your application to develop new applications would themselves be considered a developer and would need their own commercial PyQt license.</p> <p>One solution to this problem is the <a class="reference external" href="http://www.riverbankcomputing.com/software/vendorid/">VendorID</a> package. This allows you to build Python extension modules that can only be imported by a digitally signed custom interpreter. The package enables you to create such an interpreter with your application embedded within it. The result is an interpreter that can only run your application, and PyQt modules that can only be imported by that interpreter. You can use the package to similarly restrict access to any extension module.</p> <p>In order to build PyQt with support for the VendorID package, pass the <a class="reference external" href="installation.html#cmdoption-configure.py-i"><em class="xref">--vendorid</em></a> command line option to <strong>configure.py</strong>.</p> </div> </div> </div> </div> <div class="sphinxsidebar"> <div class="sphinxsidebarwrapper"> <p class="logo"><a href="index.html"> <img class="logo" src="_static/logo.png" alt="Logo"/> </a></p> <h4>Previous topic</h4> <p class="topless"><a href="incompatible_apis.html" title="previous chapter">Selecting Incompatible APIs</a></p> <h4>Next topic</h4> <p class="topless"><a href="build_system.html" title="next chapter">The PyQt Build System</a></p> <div id="searchbox" style="display: none"> <h3>Quick search</h3> <form class="search" action="search.html" method="get"> <input type="text" name="q" size="18" /> <input type="submit" value="Go" /> <input type="hidden" name="check_keywords" value="yes" /> <input type="hidden" name="area" value="default" /> </form> <p class="searchtip" style="font-size: 90%"> Enter search terms or a module, class or function name. </p> </div> <script type="text/javascript">$('#searchbox').show(0);</script> </div> </div> <div class="clearer"></div> </div> <div class="related"> <h3>Navigation</h3> <ul> <li class="right" style="margin-right: 10px"> <a href="genindex.html" title="General Index" >index</a></li> <li class="right" > <a href="modindex.html" title="Global Module Index" >modules</a> |</li> <li class="right" > <a href="build_system.html" title="The PyQt Build System" >next</a> |</li> <li class="right" > <a href="incompatible_apis.html" title="Selecting Incompatible APIs" >previous</a> |</li> <li><a href="index.html">PyQt 4.8.3 Reference Guide</a> »</li> </ul> </div> <div class="footer"> © Copyright 2011 Riverbank Computing Limited. Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 0.6.6. </div> </body> </html>