Hi Burak,
On 12/11/13 01:04, Martin Zibricky wrote:
On Sunday 10 of November 2013 11:13:44 [email protected] wrote:
So I'm stuck here. Clicking on dock is a rather important UI action that I
want to provide to my users, so I have to work with PyObjC somehow.
Any directions?
Examine how if PyObjc does any import magic that pyinstaller is not able to
handle or any data files or necessary initialization.
I noticed a similar behaviour and my workaround is below. It's for the
Foundataion namespace, but it is possible that the AppKit namespace has a
similar issue. I figured out the namespaces by trial and error using variations on:
import namespace
print dir(namespace)
in a packaged script.
If you figure out what is causing this behavior I'd like to know.
Glenn
Example of workaround:
import sys
import Foundation
def main():
if getattr(sys, 'frozen', False):
# packaged
print "Foundation.Foundation.NSFullUserName:",\
Foundation.Foundation.NSFullUserName()
loc = Foundation.CoreFoundation.CoreFoundation.CFLocaleCopyCurrent()
countryCode = Foundation.CoreFoundation.CoreFoundation.CFLocaleGetValue(
loc,
Foundation.CoreFoundation.CoreFoundation.kCFLocaleCountryCode)
countryName =
Foundation.CoreFoundation.CoreFoundation.CFLocaleCopyDisplayNameForPropertyValue(
loc,
Foundation.CoreFoundation.CoreFoundation.kCFLocaleCountryCode,
countryCode)
else:
# non packaged
print "Foundation.NSFullUserName:",\
Foundation.NSFullUserName()
loc = Foundation.CFLocaleCopyCurrent()
countryCode = Foundation.CFLocaleGetValue(
loc,
Foundation.kCFLocaleCountryCode)
countryName = Foundation.CFLocaleCopyDisplayNameForPropertyValue(
loc, Foundation.kCFLocaleCountryCode, countryCode)
print countryName, countryCode
if __name__=="__main__":
main()
--
You received this message because you are subscribed to the Google Groups
"PyInstaller" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/pyinstaller.
For more options, visit https://groups.google.com/groups/opt_out.