Simulate Python Install in Windows Registry
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty{ height:90px;width:728px;box-sizing:border-box;
}
I'm developing a Python 2.7 based application that will be distributed to Windows machines using Pyinstaller. The application uses a third party API.
I can satisfy all the API's dependency requirements. It doesn't need Python 2.7 to be installed on the host machine.
However, the API crashes unless it can find these Windows registry keys that are normally set by the Windows Python 2.7 msi installer:
[HKEY_CURRENT_USERSoftwarePython]
[HKEY_CURRENT_USERSoftwarePythonPythoncore2.7]
[HKEY_CURRENT_USERSoftwarePythonPythoncore2.7InstallPath]
@="C:\python27"
[HKEY_CURRENT_USERSoftwarePythonPythoncore2.7PythonPath]
@="C:\python27;C:\python27\Lib\;C:\python27\DLLs\"
I can make the API crash or run at will by removing or adding the above to the registry.
I tested that setting these keys by hand has no ill effect on either a future installation of Python 2.7 or on Windows Add/Remove programs feature.
I know little about Windows registry. Is there a potential for harm to end users' OS if my application writes these keys on hosts that lack Python 2.7?
windows python-2.7 registry
add a comment |
I'm developing a Python 2.7 based application that will be distributed to Windows machines using Pyinstaller. The application uses a third party API.
I can satisfy all the API's dependency requirements. It doesn't need Python 2.7 to be installed on the host machine.
However, the API crashes unless it can find these Windows registry keys that are normally set by the Windows Python 2.7 msi installer:
[HKEY_CURRENT_USERSoftwarePython]
[HKEY_CURRENT_USERSoftwarePythonPythoncore2.7]
[HKEY_CURRENT_USERSoftwarePythonPythoncore2.7InstallPath]
@="C:\python27"
[HKEY_CURRENT_USERSoftwarePythonPythoncore2.7PythonPath]
@="C:\python27;C:\python27\Lib\;C:\python27\DLLs\"
I can make the API crash or run at will by removing or adding the above to the registry.
I tested that setting these keys by hand has no ill effect on either a future installation of Python 2.7 or on Windows Add/Remove programs feature.
I know little about Windows registry. Is there a potential for harm to end users' OS if my application writes these keys on hosts that lack Python 2.7?
windows python-2.7 registry
Sideeffect: pythonclock.org
– Patrick Artner
Nov 16 '18 at 19:11
Just out of curiosity: How are you running python code without a python env? And how can you guarantee that all code paths of the 3rd party API is statisfied by your code?
– Patrick Artner
Nov 16 '18 at 19:14
The code is frozen and self contained in a Pyinstaller .exe build. It doesn't require Python on the host. I can not guarantee anything regarding this poorly documented API. It's been all trial-and-error making it work.
– I_Ridanovic
Nov 16 '18 at 20:47
add a comment |
I'm developing a Python 2.7 based application that will be distributed to Windows machines using Pyinstaller. The application uses a third party API.
I can satisfy all the API's dependency requirements. It doesn't need Python 2.7 to be installed on the host machine.
However, the API crashes unless it can find these Windows registry keys that are normally set by the Windows Python 2.7 msi installer:
[HKEY_CURRENT_USERSoftwarePython]
[HKEY_CURRENT_USERSoftwarePythonPythoncore2.7]
[HKEY_CURRENT_USERSoftwarePythonPythoncore2.7InstallPath]
@="C:\python27"
[HKEY_CURRENT_USERSoftwarePythonPythoncore2.7PythonPath]
@="C:\python27;C:\python27\Lib\;C:\python27\DLLs\"
I can make the API crash or run at will by removing or adding the above to the registry.
I tested that setting these keys by hand has no ill effect on either a future installation of Python 2.7 or on Windows Add/Remove programs feature.
I know little about Windows registry. Is there a potential for harm to end users' OS if my application writes these keys on hosts that lack Python 2.7?
windows python-2.7 registry
I'm developing a Python 2.7 based application that will be distributed to Windows machines using Pyinstaller. The application uses a third party API.
I can satisfy all the API's dependency requirements. It doesn't need Python 2.7 to be installed on the host machine.
However, the API crashes unless it can find these Windows registry keys that are normally set by the Windows Python 2.7 msi installer:
[HKEY_CURRENT_USERSoftwarePython]
[HKEY_CURRENT_USERSoftwarePythonPythoncore2.7]
[HKEY_CURRENT_USERSoftwarePythonPythoncore2.7InstallPath]
@="C:\python27"
[HKEY_CURRENT_USERSoftwarePythonPythoncore2.7PythonPath]
@="C:\python27;C:\python27\Lib\;C:\python27\DLLs\"
I can make the API crash or run at will by removing or adding the above to the registry.
I tested that setting these keys by hand has no ill effect on either a future installation of Python 2.7 or on Windows Add/Remove programs feature.
I know little about Windows registry. Is there a potential for harm to end users' OS if my application writes these keys on hosts that lack Python 2.7?
windows python-2.7 registry
windows python-2.7 registry
asked Nov 16 '18 at 18:46
I_RidanovicI_Ridanovic
6919
6919
Sideeffect: pythonclock.org
– Patrick Artner
Nov 16 '18 at 19:11
Just out of curiosity: How are you running python code without a python env? And how can you guarantee that all code paths of the 3rd party API is statisfied by your code?
– Patrick Artner
Nov 16 '18 at 19:14
The code is frozen and self contained in a Pyinstaller .exe build. It doesn't require Python on the host. I can not guarantee anything regarding this poorly documented API. It's been all trial-and-error making it work.
– I_Ridanovic
Nov 16 '18 at 20:47
add a comment |
Sideeffect: pythonclock.org
– Patrick Artner
Nov 16 '18 at 19:11
Just out of curiosity: How are you running python code without a python env? And how can you guarantee that all code paths of the 3rd party API is statisfied by your code?
– Patrick Artner
Nov 16 '18 at 19:14
The code is frozen and self contained in a Pyinstaller .exe build. It doesn't require Python on the host. I can not guarantee anything regarding this poorly documented API. It's been all trial-and-error making it work.
– I_Ridanovic
Nov 16 '18 at 20:47
Sideeffect: pythonclock.org
– Patrick Artner
Nov 16 '18 at 19:11
Sideeffect: pythonclock.org
– Patrick Artner
Nov 16 '18 at 19:11
Just out of curiosity: How are you running python code without a python env? And how can you guarantee that all code paths of the 3rd party API is statisfied by your code?
– Patrick Artner
Nov 16 '18 at 19:14
Just out of curiosity: How are you running python code without a python env? And how can you guarantee that all code paths of the 3rd party API is statisfied by your code?
– Patrick Artner
Nov 16 '18 at 19:14
The code is frozen and self contained in a Pyinstaller .exe build. It doesn't require Python on the host. I can not guarantee anything regarding this poorly documented API. It's been all trial-and-error making it work.
– I_Ridanovic
Nov 16 '18 at 20:47
The code is frozen and self contained in a Pyinstaller .exe build. It doesn't require Python on the host. I can not guarantee anything regarding this poorly documented API. It's been all trial-and-error making it work.
– I_Ridanovic
Nov 16 '18 at 20:47
add a comment |
0
active
oldest
votes
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53343706%2fsimulate-python-install-in-windows-registry%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
0
active
oldest
votes
0
active
oldest
votes
active
oldest
votes
active
oldest
votes
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53343706%2fsimulate-python-install-in-windows-registry%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Sideeffect: pythonclock.org
– Patrick Artner
Nov 16 '18 at 19:11
Just out of curiosity: How are you running python code without a python env? And how can you guarantee that all code paths of the 3rd party API is statisfied by your code?
– Patrick Artner
Nov 16 '18 at 19:14
The code is frozen and self contained in a Pyinstaller .exe build. It doesn't require Python on the host. I can not guarantee anything regarding this poorly documented API. It's been all trial-and-error making it work.
– I_Ridanovic
Nov 16 '18 at 20:47