Listen for keys in non-GUI app?

Is there a way for a non-gui application that runs in a dos-box to receive key strokes? i read about the CTRL-C shutdown hook, but i don't want to shutdown my app but just send them some key combination so that it print something to System.out. Is this possible?

You could try jcurses or a similar library...
http://sourceforge.net/projects/javacurses/

Similar Messages

  • How to listen for key press when air app does not have focus

    Hi,
    I am developing a application in air and part of the functionality I need is the ability for the app to listen for when a specific key is pressed, even when the air app does not have focus.
    Is there support for this for windows or mac? If not, how might this be accomplished? ANE?    

    Ok Mr. Smartass...Ok
    I'm building a browser that is always open, and when
    a user presses Ctrl+F1 (notice, just those two keys,
    I don't care what else they press...) the browser
    will open up. That way, you don't have to wait for it
    to load all the time.You have two ideas here. One is having a universal key map that always gets ctrl-f1 sent to your app. The other is a program that is constantly running so that you don't have to wait for it to open up. The former is not possible (and this is a good thing) As warneria and I have been saying, it is bad design for an app to try to force an OS to implement this kind of feature.
    If you're not going to help please don't post at all;
    it's a waste of time for both you, me, and anyone
    else who may need help on the same subject. Why wouldBelieve it or not, I am helping you.
    See
    http://www.google.com/search?hl=en&lr=&q=programming+code+side+effects
    and
    http://www.faqs.org/docs/artu/ch04s02.html
    "Doug McIlroy's advice to �Do one thing well� is usually interpreted as being about simplicity. But it's also, implicitly and at least as importantly, about orthogonality."
    anyone in their right mind who's trying to steal
    people's passwords come out and say, "I'm not trying
    to steal people's passwords!"wait, your question is why would someone trying to steal passwords say I'm not trying to steal passwords? I think duplicitous people in their right minds might try to trick you that way.
    Beyond that, even if you're not a malicious hacker - and I am sure you are not - if someone posts a solution to your problem, malicious coders then will have learned how to do it. If you think you're programming or using these forums in a bubble, you are not.

  • Can't install on my samsung vibrant because of "content rating filter" even after I have allowed for install of non-market apps. Firefox website says incompatible as well and my android platform is a version above.

    I have a samsung vibrant phone. I am running android eclair, I think its 2.1. I was trying to instal firefox. Linking from the web to the android market, I get "app not found msg." To link from the web, I changed my phone setting to allow apps from non-market sources. When I visit the firefox web page for android I get an "app not compatible with phone" msg. same msg for both regular and beta, but my phone is listed in the compatible phones list. Upon trying to install anyway, I get an "incompatible with content filter settings" msg. What does all of this mean and how can I change it?

    "Content filter" is the Android Market's method for restricting certain applications that may provide access to "mature" content. You can disable content filtering in the settings of the Market app on your phone.

  • N96 game keys in non-ngage apps

    Hi,
    I really love the fact that the media keys double as game control keys in N-Gage, but I's love to be able to use them in other games and applications as well. Is there any way to assign these keys for use in non-N-Gage applications?

    That actually depands on the developer of the games itself if they have added the options to use the keys in their program.
    Then you may use it or activate it in the settings of the games itself.
    Mark me a KUDOS if this has helped...

  • Listen for events in another Gui class

    Most of the GUIs I have written to date have consisted of either a single class or multiple self-contained classes - mainly extensions of JPanel with JButtons etc to perform certain tasks.
    Now I want to be able to click a JButton in one class which will invoke a method in another.
    The code is too lengthy to post here but this is the general layout:
    JFrame Simulation_GUI contains a JPanel (panelMain) which is set as the content pane
    panelMain contains two GUI classes which extend JPanel;
    buttonPane > contains a number of JButtons, including the one I want to click
    loadingPane > contains the method (which takes a Hastable as an argument) I want to run
    All three panels are declared in the main class which extends JFrame, so I know that from there I can simply call;
    loadingPanel.runLoads(htData); but how do I do this from the JButton on the buttonPane.
    Any assistance greatly appreciated as I have little enough hair at the moment and can't afford to tear much more out.
    Thanks in advance

    Class GUI1 {
    //Display all the buttons.
    public void init() {
    Button.addActionListener(new
    ener(new SomeClass(this));
    Class SomeClass implements ActionListener {
    GUI1 gui = null;
    SomeClass(GUI1 gui) {
    this.gui = gui;
    public void actionPerformed(ActionEvent e) {
    //Do all your process here
    gui.setTable(table);    //table would be ur
    ould be ur hashtable
    }Cheers
    -PThis didn't fully answer my question but did two things:
    1. Told me that it is at least possible and it is just me having a senior moment,
    2. Sent me on the right road to finding a solution
    With additional help from the following post I have sorted my problem. Basically I had to centrallise the event handling into a different class. This was instantiated by the main GUI class and passed to the other GUI components as an argument.
    http://forum.java.sun.com/thread.jspa?threadID=576012&messageID=2881969
    Simple when you know how...!
    prashanth_kuppur - have some Duke Dollars on me and thanks for the poke in the right direction.

  • Push notifications for Pro subscription non-newstand apps?

    I'm struggling to determine the answers to a couple of questions as different sources seem to suggest different things, so:
    We have a DPS Professional subscription, not Enterprise
    We're creating a multi-issue application
    As we aren't publishing content on a schedule, we don't want to create a Newstand app
    Are we able to have push notifications to indicate to users that new content is available to download?
    I thought I'd read that this was possible, but that the notification (for now) would be limited to a badge on the app icon indicating the number of new pieces of content available. Now I'm not sure.
    If it **is** possible, does anyone know of a guide to the right settings to apply when setting up the app in DPS App Builder?
    Lastly -- assuming it is possible -- do push notifications show up in the development version of the app?
    Cheers,
    Keith

    Aha. Thanks Bob, that *probably* explains why no notifications are showing up in my development version.
    I'm curious why push notifications don't work in the development version? Given that we all (me especially) have the capability to make the occasional mistake even *after* reading the docs, it's a bit worrisome that it's (near) impossible to test notifications.
    I mean, I think I've done all the right things: I have the push certs generated and exported, have enabled the app for push in iTunes Connect and I hadn't generated mobileprovision files until after I'd done that so they should be all present and correct. But ultimately the only way I'll know is to submit it to Apple and push the notify button. Which makes me nervous...

  • Managing Coherence via JMX for web and non web app

    I read your posting on,
    Q: Where can I get an advanced example of managing Coherence via JMX?
    and downloaded the jar file.
    It works for the web app but not for the server application.
    My configuratiion is two weblogic server with two tangosol nodes and two independent tangosol server nodes running in a cluster. That is 4 tangosol cluster are running. The jar file allows me to see only one node that is running on the web logic server. How can I view the other 3 nodes?
    Thanks.

    Hi,
    JInspired recently released a special update to JXInsight which includes support for Tangosol's Coherence product. The release provides 3 important features for Coherence customers:
    1. Coherence JMX-to-JXInsight metric mapping
    2. Coherence JVMInsight extension (remote inspection of cache runtime state)
    3. Coherence Cache trace extension
    The following links provide additional information entries:
    http://blog.jinspired.com/?p=13
    http://blog.jinspired.com/?p=12
    http://forums.jinspired.com/viewtopic.php?t=8
    One large benefit to using JXInsight for monitoring Coherence is that you could cache associate activity with other layers in your application stack (JSP, EJB, JMS, JCA, Hibernate, JDO,...) including contextual processing steps.
    Within our installation root directory there is a sample/coherence directory containing a sample script to test with the Coherence product.
    Kind regards,
    William Louth
    CTO, JInspired
    "Java EE tuning, testing, tracing, and monitoring with JXInsight"
    http://www.jinspired.com

  • Web Server Filter Based SSO to Non-SAP Apps

    Hi,
    I am following SAP Note 442401 for configuring the Non-SAP App for Web Server Filter based SSO using SAP Logon Ticket. Also, I have downloaded the 5_0_2_8.zip file.
    The Readme doc of this zip file says:
    "<b>Changes in Web server filter plugins
    The Web server filter plug ins and the Ticket Toolkit now were separated.
    See subdirectories for further information:
    "C"          the Ticket Toolkit
    "filter"     the Web server filter plug ins
    This is the last released version (5.0.2.8) on SAPSERV.
    Pleaser refer for newer versions to SAP Service Marketplace (http://service.sap.com/patches)
    Technology Components-> SAP SSOEXT -> SAP SSOEXT</b>"
    Zip file has two folders named "C" and "filter".
    "C" folder has cpp code to varify the ticket.
    "Filter" folder has DLLs for the different web servers.
    So far so good . Now, what I want to know is that is placing the  DLL from the Filter folder onto the respective web server and doing some configs, as per the PDF provided with ZIP file, enough?
    Or do I need to do anything else, like writing any class to read and validate the Ticket?
    Thanks,
    Vivek

    See Web Server Filter Based SSO to Non-SAP Apps

  • How to run an iPhone non-GUI application in background

    Hi All,
    While looking into the web fouond that only one application can be run at a time in iPhone. So is there any way or work around to run a non-GUI app in iPhone in Background.
    This app will continuously query certain requests to iPhone regardign some internal iPhone events.
    Thanks in advance.
    Regards.
    Amit

    No.

  • How to listen for inputs without a component? For creating bots

    I mean, for example, I want to write a a program that listens for keys f12 to (for example) skip the track in a media player and f11 to skip back. Thinks like the like :P. But I want to do this without any component, becasue the program won't have the focus at all.
    If it is needed to create a dll just tell as much as you pacience affords.

    I mean, for example, I want to write a a program that
    listens for keys f12 to (for example) skip the track
    in a media player and f11 to skip back. Thinks like
    the like :P. But I want to do this without any
    component, becasue the program won't have the focus
    at all. >Translation : I need a system keylogger.
    You can't do this in Java. And it will be OS specific.

  • ISight not working for non-Apple apps under particular user account

    I noticed that my iSight built into Macbook Pro 15" is not working anymore for non-Apple apps (Skype and Webex at least) and working for Facetime and Messages Beta under same account.
    I tried to test it using different account on OS X with Skype and it is working great!
    I'm using 10.7.3.
    Any advice?

    Hi,
    I take it that in System Information the camera is listed under USB items ?
    Your speps say OS x 10.7.2
    Have you updated to OS X 10.7.3 ?
    If you have I would start with that by doing a COMBO Version (Not using Software Update)
    This will be everything that has been updated since OS X 107 came out and may catch those hard to trace issues.
    Using the FInder > Go Menu > Hold the ALT key and Select the Library that appears > then navigate to Preferences.
    In here find the Skype .plist.
    Open it with Quick Look.
    Can you capture that (Apple/CMD ( or ⌘) + Shift + 4 together (Also tap space bar at the end to get the Window) ) ? and post it here.
    I don't use Skype and don't have the .plist to see if it lists the camera.
    If it does it might pay to delete the.plist and force Skype to re-***** the hardware.  (It also depends how much of your other settings are in there)
    In the meantime if you go to the Skype Preferences can you see a Preview of the camera ?
    Can you turn Off access to the camera and turn it On again in Skype ?
    Skype does use Flash Player to do the Video.
    Is Webex a browser led thing that uses Flash ?
    If it looks like it is a Flash Issue do you have the GoogleTalk Video Plugin installed (there is a standalone and it is part of Chrome) ?
    9:08 PM      Saturday; February 18, 2012
    Please, if posting Logs, do not post any Log info after the line "Binary Images for iChat"
      iMac 2.5Ghz 5i 2011 (Lion 10.7.3)
     G4/1GhzDual MDD (Leopard 10.5.8)
     MacBookPro 2Gb (Snow Leopard 10.6.8)
     Mac OS X (10.6.8),
    "Limit the Logs to the Bits above Binary Images."  No, Seriously

  • Huge performance differences between a map listener for a key and filter

    Hi all,
    I wanted to test different kind of map listener available in Coherence 3.3.1 as I would like to use it as an event bus. The result was that I found huge performance differences between them. In my use case, I have data which are time stamped so the full key of the data is the key which identifies its type and the time stamp. Unfortunately, when I had my map listener to the cache, I only know the type id but not the time stamp, thus I cannot add a listener for a key but for a filter which will test the value of the type id. When I launch my test, I got terrible performance results then I tried a listener for a key which gave me much better results but in my case I cannot use it.
    Here are my results with a Dual Core of 2.13 GHz
    1) Map Listener for a Filter
    a) No Index
    Create (data always added, the key is composed by the type id and the time stamp)
    Cache.put
    Test 1: Total 42094 millis, Avg 1052, Total Tries 40, Cache Size 80000
    Cache.putAll
    Test 2: Total 43860 millis, Avg 1096, Total Tries 40, Cache Size 80000
    Update (data added then updated, the key is only composed by the type id)
    Cache.put
    Test 3: Total 56390 millis, Avg 1409, Total Tries 40, Cache Size 2000
    Cache.putAll
    Test 4: Total 51734 millis, Avg 1293, Total Tries 40, Cache Size 2000
    b) With Index
    Cache.put
    Test 5: Total 39594 millis, Avg 989, Total Tries 40, Cache Size 80000
    Cache.putAll
    Test 6: Total 43313 millis, Avg 1082, Total Tries 40, Cache Size 80000
    Update
    Cache.put
    Test 7: Total 55390 millis, Avg 1384, Total Tries 40, Cache Size 2000
    Cache.putAll
    Test 8: Total 51328 millis, Avg 1283, Total Tries 40, Cache Size 2000
    2) Map Listener for a Key
    Update
    Cache.put
    Test 9: Total 3937 millis, Avg 98, Total Tries 40, Cache Size 2000
    Cache.putAll
    Test 10: Total 1078 millis, Avg 26, Total Tries 40, Cache Size 2000
    Please help me to find what is wrong with my code because for now it is unusable.
    Best Regards,
    Nicolas
    Here is my code
    import java.io.DataInput;
    import java.io.DataOutput;
    import java.io.IOException;
    import java.util.HashMap;
    import java.util.Map;
    import com.tangosol.io.ExternalizableLite;
    import com.tangosol.net.CacheFactory;
    import com.tangosol.net.NamedCache;
    import com.tangosol.util.Filter;
    import com.tangosol.util.MapEvent;
    import com.tangosol.util.MapListener;
    import com.tangosol.util.extractor.ReflectionExtractor;
    import com.tangosol.util.filter.EqualsFilter;
    import com.tangosol.util.filter.MapEventFilter;
    public class TestFilter {
          * To run a specific test, just launch the program with one parameter which
          * is the test index
         public static void main(String[] args) {
              if (args.length != 1) {
                   System.out.println("Usage : java TestFilter 1-10|all");
                   System.exit(1);
              final String arg = args[0];
              if (arg.endsWith("all")) {
                   for (int i = 1; i <= 10; i++) {
                        test(i);
              } else {
                   final int testIndex = Integer.parseInt(args[0]);
                   if (testIndex < 1 || testIndex > 10) {
                        System.out.println("Usage : java TestFilter 1-10|all");
                        System.exit(1);               
                   test(testIndex);               
         @SuppressWarnings("unchecked")
         private static void test(int testIndex) {
              final NamedCache cache = CacheFactory.getCache("test-cache");
              final int totalObjects = 2000;
              final int totalTries = 40;
              if (testIndex >= 5 && testIndex <= 8) {
                   // Add index
                   cache.addIndex(new ReflectionExtractor("getKey"), false, null);               
              // Add listeners
              for (int i = 0; i < totalObjects; i++) {
                   final MapListener listener = new SimpleMapListener();
                   if (testIndex < 9) {
                        // Listen to data with a given filter
                        final Filter filter = new EqualsFilter("getKey", i);
                        cache.addMapListener(listener, new MapEventFilter(filter), false);                    
                   } else {
                        // Listen to data with a given key
                        cache.addMapListener(listener, new TestObjectSimple(i), false);                    
              // Load data
              long time = System.currentTimeMillis();
              for (int iTry = 0; iTry < totalTries; iTry++) {
                   final long currentTime = System.currentTimeMillis();
                   final Map<Object, Object> buffer = new HashMap<Object, Object>(totalObjects);
                   for (int i = 0; i < totalObjects; i++) {               
                        final Object obj;
                        if (testIndex == 1 || testIndex == 2 || testIndex == 5 || testIndex == 6) {
                             // Create data with key with time stamp
                             obj = new TestObjectComplete(i, currentTime);
                        } else {
                             // Create data with key without time stamp
                             obj = new TestObjectSimple(i);
                        if ((testIndex & 1) == 1) {
                             // Load data directly into the cache
                             cache.put(obj, obj);                         
                        } else {
                             // Load data into a buffer first
                             buffer.put(obj, obj);                         
                   if (!buffer.isEmpty()) {
                        cache.putAll(buffer);                    
              time = System.currentTimeMillis() - time;
              System.out.println("Test " + testIndex + ": Total " + time + " millis, Avg " + (time / totalTries) + ", Total Tries " + totalTries + ", Cache Size " + cache.size());
              cache.destroy();
         public static class SimpleMapListener implements MapListener {
              public void entryDeleted(MapEvent evt) {}
              public void entryInserted(MapEvent evt) {}
              public void entryUpdated(MapEvent evt) {}
         public static class TestObjectComplete implements ExternalizableLite {
              private static final long serialVersionUID = -400722070328560360L;
              private int key;
              private long time;
              public TestObjectComplete() {}          
              public TestObjectComplete(int key, long time) {
                   this.key = key;
                   this.time = time;
              public int getKey() {
                   return key;
              public void readExternal(DataInput in) throws IOException {
                   this.key = in.readInt();
                   this.time = in.readLong();
              public void writeExternal(DataOutput out) throws IOException {
                   out.writeInt(key);
                   out.writeLong(time);
         public static class TestObjectSimple implements ExternalizableLite {
              private static final long serialVersionUID = 6154040491849669837L;
              private int key;
              public TestObjectSimple() {}          
              public TestObjectSimple(int key) {
                   this.key = key;
              public int getKey() {
                   return key;
              public void readExternal(DataInput in) throws IOException {
                   this.key = in.readInt();
              public void writeExternal(DataOutput out) throws IOException {
                   out.writeInt(key);
              public int hashCode() {
                   return key;
              public boolean equals(Object o) {
                   return o instanceof TestObjectSimple && key == ((TestObjectSimple) o).key;
    }Here is my coherence config file
    <?xml version="1.0"?>
    <!DOCTYPE cache-config SYSTEM "cache-config.dtd">
    <cache-config>
         <caching-scheme-mapping>
              <cache-mapping>
                   <cache-name>test-cache</cache-name>
                   <scheme-name>default-distributed</scheme-name>
              </cache-mapping>
         </caching-scheme-mapping>
         <caching-schemes>          
              <distributed-scheme>
                   <scheme-name>default-distributed</scheme-name>
                   <backing-map-scheme>
                        <class-scheme>
                             <scheme-ref>default-backing-map</scheme-ref>
                        </class-scheme>
                   </backing-map-scheme>
              </distributed-scheme>
              <class-scheme>
                   <scheme-name>default-backing-map</scheme-name>
                   <class-name>com.tangosol.util.SafeHashMap</class-name>
              </class-scheme>
         </caching-schemes>
    </cache-config>Message was edited by:
    user620763

    Hi Robert,
    Indeed, only the Filter.evaluate(Object obj)
    method is invoked, but the object passed to it is a
    MapEvent.<< In fact, I do not need to implement EntryFilter to
    get a MapEvent, I could get the same result (in my
    last message) by writting
    cache.addMapListener(listener, filter,
    true)instead of
    cache.addMapListener(listener, new
    MapEventFilter(filter) filter, true)
    I believe, when the MapEventFilter delegates to your filter it always passes a value object to your filter (old or new), meaning a value will be deserialized.
    If you instead used your own filter, you could avoid deserializing the value which usually is much larger, and go to only the key object. This would of course only be noticeable if you indeed used a much heavier cached value class.
    The hashCode() and equals() does not matter on
    the filter class<< I'm not so sure since I noticed that these methods
    were implemented in the EqualsFilter class, that they
    are called at runtime and that the performance
    results are better when you add them
    That interests me... In what circumstances did you see them invoked? On the storage node before sending an event, or upon registering a filtered listener?
    If the second, then I guess the listeners are stored in a hash-based map of collections keyed by a filter, and indeed that might be relevant as in that case it will cause less passes on the filter for multiple listeners with an equalling filter.
    DataOutput.writeInt(int) writes 4 bytes.
    ExternalizableHelper.writeInt(DataOutput, int) writes
    1-5 bytes (or 1-6?), with numbers with small absolute
    values consuming less bytes.Similar differences exist
    for the long type as well, but your stamp attribute
    probably will be a large number...<< I tried it but in my use case, I got the same
    results. I guess that it must be interesting, if I
    serialiaze/deserialiaze many more objects.
    Also, if Coherence serializes an
    ExternalizableLite object, it writes out its
    class-name (except if it is a Coherence XmlBean). If
    you define your key as an XmlBean, and add your class
    into the classname cache configuration in
    ExternalizableHelper.xml, then instead of the
    classname, only an int will be written. This way you
    can spare a large percentage of bandwidth consumed by
    transferring your key instance as it has only a small
    number of attributes. For the value object, it might
    or might not be so relevant, considering that it will
    probably contain many more attributes. However, in
    case of a lite event, the value is not transferred at
    all.<< I tried it too and in my use case, I noticed that
    we get objects nearly twice lighter than an
    ExternalizableLite object but it's slower to get
    them. But it is very intersting to keep in mind, if
    we would like to reduce the network traffic.
    Yes, these are minor differences at the moment.
    As for the performance of XMLBean, it is a hack, but you might try overriding the readExternal/writeExternal method with your own usual ExternalizableLite implementation stuff. That way you get the advantages of the xmlbean classname cache, and avoid its reflection-based operation, at the cost of having to extend XMLBean.
    Also, sooner or later the TCMP protocol and the distributed cache storages will also support using PortableObject as a transmission format, which enables using your own classname resolution and allow you to omit the classname from your objects. Unfortunately, I don't know when it will be implemented.
    >
    But finally, I guess that I found the best solution
    for my specific use case which is to use a map
    listener for a key which has no time stamp, but since
    the time stamp is never null, I had just to check
    properly the time stamp in the equals method.
    I would still recommend to use a separate key class, use a custom filter which accesses only the key and not the value, and if possible register a lite listener instead of a heavy one. Try it with a much heavier cached value class where the differences are more pronounced.
    Best regards,
    Robert

  • [IOS-Android] Is it possible to make flashbuilder listening for usb debugging without re-packaging an app ?

    With big apps it's boring to wait 10 minutes to package ios app just to be able to retry something. Is there a way to make flash builder listen for usb debugging like after the debug packaging bug without re-package ?

    Just FYI, Whatsapp is not free indefinitely even on Android phones. They give a one-year trial period after which you have to pay per year for the subscription (a miniscule amount, but you have to pay nonetheless), whereas with the iOS app you pay once up front and then don't have to pay again. So in the long run, the iOS version comes out cheaper (at least unless Whatsapp changes their pricing model). And also just FYI, Whatsapp doesn't work on the iPod touch, only on the iPhone.
    In any case, as planb77 said, pricing is totally up to the developer of the app. It's completely the developer's choice what price to charge for an app.
    Regards.

  • Common jars for JWS and non-JWS Java Apps?

    Java Application 'A' is installed to file system - not JWS. App 'A' has some jars in common with Java Application 'B', which we would like to deploy using JWS. Do I have to:
    a) duplicate the common jars - once on the file system for App 'A' and once in the cache for App 'B'?
    b) keep the common jars only on the file system - but somehow make them visible to the JWS App 'B'?
    c) keep the common jars only in the JWS cache - but somehow make them visible to the non-JWS App 'A'?
    Please advise.
    Thanks in advance.
    -eman

    Regarding "Enabling Single Sign-On from SAP J2EE Engine/EP to Non-SAP Java Applications" by Tim Mullé, Stephan Boecker
    Could anyone who has this document say if "How to Enable Single Sign-on with Non-SAP Web Application" by Sudip Majumder (Tata Consultancy Services) is a direct replacement and contains all the same information?
    It is currently at: https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/d0c78148-12de-2a10-27bf-960acc753aab
    (until SAP deletes it

  • [KDE] segfault for non KDE apps? (new)

    Hi,
    a few days ago, I noticed that non KDE apps (Firefox, Claws Mail, etc.) did not start on my KDE desktop (KDE 4.4, not KDE-mod).
    What happens is that if I click on one of them on the menu, the app starts (I see the mouse cursor being active) but in the end nothing happens. By executing the corresponding command in a terminal followed by sudo, it would work. However, when entering the same command without sudo it gives me a "segmentation fault". KDE apps (dolphin, konqueror) works perfectly.
    What would that mean and how can I fix it?
    thanks,
    Charles.

    Dude, you need an iTunes Store account to purchase apps. You don't need to download a US version of iTunes to upgrade to 1.1.3. Without an iTunes Store Account, your ipod touch is as good as crippled since you cannot download and install apps onto your ipod Touch while others can. I do have one suggestion for Apple: to enable an iTunes Apps (not music) Account that is made payable by credit cards or gift cards (but not restricted to countries that itunes store operates in). This way, Apple can also sell apps to many more countries.

Maybe you are looking for