Acrobat Reader - Use Fixed Resolution for Snapshot tool images setting

Hello,
We're currently running Acrobat Reader 9.x on our production Windows Vista SP2 Enterprise image and we're running Acrobat Reader X on our development Windows 7 Enterprise 64-bit image.  I'm curious if there's a registry setting that sets the "Use fixed Resolution for Snapshop tool images" from 72dpi to 300 dpi. 
Any help would be greatly appreciated.
Thanks,
Rob

The per user settings are held in the following registry location:
HKCU\SOFTWARE\Adobe\Acrobat Reader\10.0\Selection
There is a hexadecimal value named iSnapshotResolution which contains the resolution for the Snapshot Tool. Also a parameter called bUseFixedSnapshotResolution which needs to be set to 1 to switch the feature on or 0 to disable the feature.
This is a per user setting but I believe Reader checks the per machine location
HKLM\SOFTWARE\Adobe\Acrobat Reader 10.0\Selection
Presumably you can put the same values into the HKLM section (it doesn't exist by default) so you will need to create the Selection key.
Hope this makes sense.
You might also find benefit of using the Enterprise Deployment tools for your deployment environment.
Enterprise Deployment Technical Resources
https://www.adobe.com/content/dotcom/en/products/acrobat/technical-resources.html
Adobe Reader 9 Customization Wizard
https://www.adobe.com/support/downloads/detail.jsp?ftpID=3993
Adobe Reader X Customization Wizard
https://www.adobe.com/support/downloads/detail.jsp?ftpID=4950

Similar Messages

  • Simulation using Eclipse plugin for JCOP tools

    Dear All,
    In search for a simulation environment for java card applet development I tried to use Eclipse plugin for JCOP tools.
    The samples which comes with the JCOP tools works fine but when try to debug my applet I receive the error: Wrong Data 6A 80.
    Generic JCOP v2.4.1 is selected for Java Card Simulation.
    Following is the JCOP Shell screen:
    cm- /term "Remote|localhost:8050"
    --Opening terminal
    /card -a a000000003000000 -c com.ibm.jc.CardManagerresetCard with timeout: 0 (ms)
    --Waiting for card...
    ATR=3B F8 13 00 00 81 31 FE 45 4A 43 4F 50 76 32 34 ;.....1.EJCOPv24
    31 B7 1.
    IOCTL().
    ATR: T=1, FI=1/DI=3 (93clk/etu), N=0, IFSC=254, BWI=4/CWI=5, Hist="JCOPv241"
    => 00 A4 04 00 08 A0 00 00 00 03 00 00 00 00 ..............
    (908058 nsec)
    <= 6F 65 84 08 A0 00 00 00 03 00 00 00 A5 59 9F 65 oe...........Y.e
    01 FF 9F 6E 06 47 91 92 18 00 00 73 4A 06 07 2A ...n.G.....sJ..*
    86 48 86 FC 6B 01 60 0C 06 0A 2A 86 48 86 FC 6B .H..k.`...*.H..k
    02 02 01 01 63 09 06 07 2A 86 48 86 FC 6B 03 64 ....c...*.H..k.d
    0B 06 09 2A 86 48 86 FC 6B 04 02 15 65 0B 06 09 ...*.H..k...e...
    2B 85 10 86 48 64 02 01 03 66 0C 06 0A 2B 06 01 +...Hd...f...+..
    04 01 2A 02 6E 01 02 90 00 ..*.n....
    Status: No Error
    cm> set-key 255/1/DES-ECB/404142434445464748494a4b4c4d4e4f 255/2/DES-ECB/404142434445464748494a4b4c4d4e4f 255/3/DES-ECB/404142434445464748494a4b4c4d4e4f
    cm> init-update 255
    => 80 50 00 00 08 B1 04 15 2B 41 3F 62 AB 00 .P......+A?b..
    (2668 usec)
    <= 00 00 F9 02 71 E3 BB AD BD CD FF 02 00 00 3D 02 ....q.........=.
    9C 31 C7 89 AD 44 8E 13 17 15 2E 5A 90 00 .1...D.....Z..
    Status: No Error
    cm> ext-auth plain
    => 84 82 00 00 10 CE 6C DC D2 8C BE 5E 33 EC 58 D0 ......l....^3.X.
    57 3A 52 D2 24 W:R.$
    (2288 usec)
    <= 90 00 ..
    Status: No Error
    cm> delete -r a00000006203010c04
    => 80 E4 00 80 0B 4F 09 A0 00 00 00 62 03 01 0C 04 .....O.....b....
    00 .
    (1084 usec)
    <= 6A 88 j.
    Status: Reference data not found
    jcshell: Error code: 6a88 (Reference data not found)
    jcshell: Wrong response APDU: 6A88
    Ignoring expected error
    cm> upload -d -b 250 "D:\JCOP\eclipse\projects\DigitalTachograph\bin\digitaltachograph\javacard\digitaltachograph.cap"
    => 80 E6 02 00 16 09 A0 00 00 00 62 03 01 0C 04 08 ..........b.....
    A0 00 00 00 03 00 00 00 00 00 00 00 ............
    (2100 usec)
    <= 00 90 00 ...
    Status: No Error
    => 80 E8 00 00 FA C4 82 84 42 01 00 25 DE CA FF ED ........B..%....
    02 02 04 00 01 09 A0 00 00 00 62 03 01 0C 04 11 ..........b.....
    64 69 67 69 74 61 6C 74 61 63 68 6F 67 72 61 70 digitaltachograp
    68 02 00 21 00 25 00 21 00 0E 00 29 03 3E 00 CD h..!.%.!...).>..
    23 D2 01 BB 04 44 00 00 09 E3 4B E5 00 11 00 05 #....D....K.....
    01 A2 04 01 00 04 00 29 04 00 01 07 A0 00 00 00 .......)........
    62 00 01 02 01 07 A0 00 00 00 62 01 01 02 01 07 b.........b.....
    A0 00 00 00 62 01 02 02 01 07 A0 00 00 00 62 02 ....b.........b.
    01 03 00 0E 01 0A A0 00 00 00 62 03 01 0C 04 01 ..........b.....
    01 DF 06 00 CD 00 00 00 80 00 00 FF 00 01 00 00 ................
    00 01 81 03 13 00 12 07 03 00 00 02 01 03 06 0B ................
    8C 81 00 00 00 80 00 0B 00 0B 01 01 00 00 0B F9 ................
    00 80 00 11 00 0F 01 01 00 10 0E A9 0D D4 0D F7 ................
    0E 07 0E 18 0E 26 0E 35 0E 44 0E 50 0E 72 0E 81 .....&.5.D.P.r..
    0E 90 0E 9B 0E F5 11 05 11 1A 11 50 00 80 00 05 ...........P....
    00 04 01 04 00 01 13 AF 13 B5 13 BA 14 0C 13 00 ................
    (6775 usec)
    <= 6A 80 j.
    Status: Wrong data
    jcshell: Error code: 6a80 (Wrong data)
    jcshell: Wrong response APDU: 6A80
    Unexpected error; aborting execution
    I will be very happy if you can help me. I am desperately in need of a working debugging environment.
    Thanks in advance!
    Kind regards,
    Mehmet

         * Processes incoming READ_BINARY APDUs. Returns data of the currently
         * selected file.
         * @param apdu   where the offset is carried in header bytes p1 and p2.
         * @param le  expected length by terminal
         * @return length of the response APDU
        private short processReadBinary(APDU apdu, boolean protectedApdu,  short leUnprotected) {
            if (!hasFileSelected()) {
                ISOException.throwIt(SW_CONDITIONS_NOT_SATISFIED);
            byte[] buffer = apdu.getBuffer();
            // retrieve p1p2 from apdu buffer
            byte p1 = buffer[OFFSET_P1];
            byte p2 = buffer[OFFSET_P2];
            short offset = Util.makeShort(p1, p2);     // offset encoded in P1/P2, 15 lowest bit
            // offset encoded in P1/P2, 15 lowest bit
            // check if le != 0 <-- no response expected
            if (leUnprotected == 0) {
                ISOException.throwIt(ISO7816.SW_WRONG_LENGTH);
            if (selectedFile == null) {
                ISOException.throwIt(ISO7816.SW_FILE_NOT_FOUND);
            if ((selectedFile.getAccessConditions() & READ_REQUIRES_SM) == READ_REQUIRES_SM) {
                if(!protectedApdu)
                   ISOException.throwIt(ISO7816.SW_SECURITY_STATUS_NOT_SATISFIED);
            short fileSize = (short) selectedFile.getFileLength();
            // check offset
            if (offset >= fileSize) {
                ISOException.throwIt(ISO7816.SW_INCORRECT_P1P2);
            // check expected length
            if ((short) (offset + leUnprotected) > fileSize) {
                ISOException.throwIt(ISO7816.SW_WRONG_LENGTH);
                //ISOException.throwIt(SW_TAMAM);
            short bufferOffset = 0;
            crypto.setEncryptionStatus(isSelectedFileEncrypted());
            if (protectedApdu) {
                bufferOffset = crypto.getApduBufferOffsetDT(leUnprotected);
                if(isSelectedFileEncrypted())
                   bufferOffset = crypto.getApduBufferOffset(leUnprotected);
                apdu.setOutgoing();
            Util.arrayCopyNonAtomic(selectedFile.getData(), offset, buffer, bufferOffset, leUnprotected);
            return leUnprotected;
         * Processes and UPDATE_BINARY apdu. Writes data in the currently selected
         * file.
         * @param apdu
         *            carries the offset where to write date in header bytes p1 and
         *            p2.
        private void processUpdateBinary(APDU apdu, boolean protectedApdu) {
            if (!hasFileSelected() || isLocked()) {
                ISOException.throwIt(ISO7816.SW_COMMAND_NOT_ALLOWED);
            if ((selectedFile.getAccessConditions() & DigitalTachograph.UPDATE_ALW) != DigitalTachograph.UPDATE_ALW) {
                if ((selectedFile.getAccessConditions() & DigitalTachograph.UPDATE_REQUIRES_SM) != DigitalTachograph.UPDATE_REQUIRES_SM) {
                    ISOException.throwIt(ISO7816.SW_SECURITY_STATUS_NOT_SATISFIED);
                    return;
                }else if(!protectedApdu){
                        ISOException.throwIt(ISO7816.SW_SECURITY_STATUS_NOT_SATISFIED);
            byte[] buffer = apdu.getBuffer();
            byte p1 = buffer[OFFSET_P1];
            byte p2 = buffer[OFFSET_P2];
            short offset = Util.makeShort(p1, p2);
            short readCount = (short) (buffer[ISO7816.OFFSET_LC] & 0xff);
            //if (!protectedApdu){
                readCount = apdu.setIncomingAndReceive();
            while (readCount > 0) {
                selectedFile.writeData(offset, buffer, OFFSET_CDATA, readCount);
                offset += readCount;
                readCount = apdu.receiveBytes(ISO7816.OFFSET_CDATA);
        private short processInternalAuthenticate(APDU apdu , boolean protectedApdu) throws CryptoException {
            byte[] buffer = apdu.getBuffer();
            short lc = (short) (buffer[OFFSET_LC] & 0xFF);
            if (lc != (short) (KID_LENGTH * 2)) {
                ISOException.throwIt(SW_WRONG_LENGTH);
            if (apdu.setIncomingAndReceive() != lc) {
                ISOException.throwIt(ISO7816.SW_WRONG_DATA);
            // Check if VU.CHR maches the one of the selected certificate on the card
            if (Util.arrayCompare(buffer, (short) (OFFSET_CDATA + KID_LENGTH), keyStore.selected_KID, (short) 0, KID_LENGTH) != 0) {
                ISOException.throwIt(SW_REFERENCE_DATA_NOT_FOUND);
            if (Util.arrayCopyNonAtomic(buffer, OFFSET_CDATA, Rnd1, (short) 0, (short) 8) != (short) 8) { // Receive Rnd1
                ISOException.throwIt(ISO7816.SW_WRONG_DATA);
            // Hash(PRnd2||K1||Rnd1||VU.CHR)
            random.generateData(PRnd2, (short) 0, (short) 90);
            random.generateData(K1, (short) 0, (short) 16);
            crypto.shaDigest.update(PRnd2, (short) 0, (short) 90); // PRnd2
            crypto.shaDigest.update(K1, (short) 0, (short) 16); // PRnd2||K1
            crypto.shaDigest.doFinal(buffer, OFFSET_CDATA, lc, digest, (short) 0); //Rnd1||VU.CHR
            BigNumber mod = new BigNumber((short) 128);
            mod.init(keyStore.Card_PubMod, (short) 0, (short) keyStore.Card_PubMod.length, BigNumber.FORMAT_HEX);
            mod.subtract(signed, (short) 0, (short) 128, BigNumber.FORMAT_HEX);
            if (mod.compareTo(signed, (short) 0, (short) 128, BigNumber.FORMAT_HEX) == -1) {
                mod.toBytes(signed, (short) 0, (short) 128, BigNumber.FORMAT_HEX);
            // To be added: if the selected private key is considered corrupted, the processing state returned is '6400' or '6581'.
            signed[0] = (byte) 0x6A;
            Util.arrayCopyNonAtomic(PRnd2, (short) 0, signed, (short) 1, (short) 90);
            Util.arrayCopyNonAtomic(K1, (short) 0, signed, (short) 91, (short) 16);
            Util.arrayCopyNonAtomic(digest, (short) 0, signed, (short) 107, (short) 20);
            signed[127] = (byte) 0xBC;
            if (!keyStore.cardPrivateKey.isInitialized()) {
                CryptoException.throwIt(CryptoException.ILLEGAL_VALUE);
            try {
                crypto.rsaSigner.init(keyStore.cardPrivateKey, Signature.MODE_SIGN);
                crypto.rsaSigner.doFinal(signed, (short) 0, (short) 128, signed, (short) 0);
            } catch (Exception e) {
                ISOException.throwIt(SW_REFERENCE_DATA_NOT_FOUND);
            if (!keyStore.selectedPublicKey.isInitialized()) {
                CryptoException.throwIt(CryptoException.ILLEGAL_VALUE);
            try {
                crypto.rsaCipher.init(keyStore.selectedPublicKey, Cipher.MODE_ENCRYPT);
                crypto.rsaCipher.doFinal(signed, (short) 0, (short) 128, signed, (short) 0);
            } catch (Exception e) {
                ISOException.throwIt(SW_REFERENCE_DATA_NOT_FOUND);
            apdu.setOutgoing();
            Util.arrayCopyNonAtomic(signed, (short) 0, buffer, (short) 0, (short) 128);
            return (short) signed.length;
        private void processExternalAuthenticate(APDU apdu) {
            short equipmentType = 0;
            if (keyStore.Selected_Cert != null) {
                equipmentType = (short) keyStore.Selected_Cert.CHA[6]; // check equipment type
            if (equipmentType != (short) 1 && equipmentType != (short) 2 && equipmentType != (short) 3 && equipmentType != (short) 4 && equipmentType != (short) 6) {
                ISOException.throwIt(ISO7816.SW_FUNC_NOT_SUPPORTED); // Instead of 6F00 throw a more meaningfull SW in case CHA is not valid.
            if (Util.arrayCompare(keyStore.Selected_Cert.CHA, (short) 0, TACHOGRAPH_AID, (short) 0, (short) 6) != 0) {
                ISOException.throwIt(ISO7816.SW_FUNC_NOT_SUPPORTED);
            byte[] buffer = apdu.getBuffer();
            byte p1 = (byte) (buffer[OFFSET_P1] & 0xff);
            byte p2 = (byte) (buffer[OFFSET_P2] & 0xff);
            if (p1 != 0 || p2 != 0) {
                ISOException.throwIt(SW_WRONG_P1P2);
            short lc = (short) (buffer[OFFSET_LC] & 0xFF);
            if (lc != (short) (128)) {
                ISOException.throwIt(SW_WRONG_LENGTH);
            if (apdu.setIncomingAndReceive() != lc) {
                ISOException.throwIt(ISO7816.SW_WRONG_DATA);
            Util.arrayCopyNonAtomic(buffer, OFFSET_CDATA, signed, (short) 0, (short) 128); // receive the cryptogram from the VU
            // decrypt the encrypted message with the card private key
            try {
                crypto.rsaCipher.init(keyStore.cardPrivateKey, Cipher.MODE_DECRYPT);
                crypto.rsaCipher.doFinal(signed, (short) 0, (short) 128, signed, (short) 0);
            } catch (Exception e) {
                ISOException.throwIt(SW_REFERENCE_DATA_NOT_FOUND);
            // verify the signature with the VU public key
            try {
                crypto.rsaCipher.init(keyStore.selectedPublicKey, Signature.MODE_VERIFY); // Cipher.MODE_ENCRYPT
                crypto.rsaCipher.doFinal(signed, (short) 0, (short) 128, signed, (short) 0);
            } catch (Exception e) {
                ISOException.throwIt(SW_REFERENCE_DATA_NOT_FOUND);
            if (signed[0] != (byte) 0x6A || signed[127] != (byte) 0xBC) {
                ISOException.throwIt(Util.makeShort(signed[0], signed[127]));
            try {
                verifyCardCertificates();
                Util.arrayCopyNonAtomic(signed, (short) 1, preDigest, (short) 0, (short) 106); // accumulate preDigest
                Util.arrayCopyNonAtomic(Rnd3, (short) 0, preDigest, (short) 106, (short) 8); // accumulate preDigest
                Util.arrayCopyNonAtomic(keyStore.Card_Cert.CHR, (short) 0, preDigest, (short) 114, (short) 8); // accumulate preDigest
                Util.arrayCopyNonAtomic(signed, (short) 91, K2, (short) 0, (short) 16); // receive K2 value
                crypto.shaDigest.update(signed, (short) 1, (short) 106); // PRnd4||K2
                crypto.shaDigest.update(Rnd3, (short) 0, (short) 8); // Rnd3
                crypto.shaDigest.doFinal(keyStore.Card_Cert.CHR, (short) 0, (short) 8, digest, (short) 0); //||Card.CHR
            } catch (Exception e) {
                ISOException.throwIt(SW_TAMAM);
            if (Util.arrayCompare(signed, (short) 107, digest, (short) 0, (short) 20) != 0) {
                ISOException.throwIt(SW_TAMAM);
            volatileState[0] |= MUTUAL_AUTHENTICATED;
            try {
                DTUtil.xor(K1, (short) 0, K2, (short) 0, KaKb, (short) 0, (short) 16);
                Util.arrayCopyNonAtomic(Rnd3, (short) 4, SSC, (short) 0, (short) 4); // tail of Rnd3
                Util.arrayCopyNonAtomic(Rnd1, (short) 4, SSC, (short) 4, (short) 4); // tail of Rnd1
            } catch (Exception e) {
                ISOException.throwIt(SW_TAMAM);
            try {
                keyStore.setKey_Ka(KaKb, (short) 0);
                keyStore.setKey_Kb(KaKb, (short) 8);
                keyStore.setSecureMessagingKeys(KaKb, (short) 0, KaKb, (short) 0);
            } catch (Exception e) {
                ISOException.throwIt(SW_TAMAM_DEGIL);
            return;
        private short returnPreDigest(APDU apdu) {
            byte[] buffer = apdu.getBuffer();
            apdu.setOutgoing();
            Util.arrayCopyNonAtomic(preDigest, (short) 0, buffer, (short) 0, (short) 122);
            return (short)preDigest.length;
        private short returnDigest(APDU apdu) {
            byte[] buffer = apdu.getBuffer();
            apdu.setOutgoing();
            Util.arrayCopyNonAtomic(digest, (short) 0, buffer, (short) 0, (short) 20);
            return (short)digest.length;
        private short returnOriginalText(APDU apdu) {
            byte[] buffer = apdu.getBuffer();
            apdu.setOutgoing();
            Util.arrayCopyNonAtomic(signed, (short) 0, buffer, (short) 0, (short) 128);
            return (short)signed.length;
        private void processVerify(APDU apdu) { // Verify_CHV(Pin_Ws)
            byte[] buffer = apdu.getBuffer();
            // retrieve the PIN data for validation.
            byte byteRead = (byte) (apdu.setIncomingAndReceive());
            // the PIN data is read into the APDU buffer
            // at the offset ISO7816.OFFSET_CDATA the PIN data length = byteRead
            if (pin.check(buffer, ISO7816.OFFSET_CDATA, byteRead) == false) {
                ISOException.throwIt(SW_VERIFICATION_FAILED);
            return;
        private void processPSO(APDU apdu) { // verify certificate
            byte[] buffer = apdu.getBuffer();
            byte p1 = (byte) (buffer[OFFSET_P1] & 0xff);
            byte p2 = (byte) (buffer[OFFSET_P2] & 0xff);
            short lc = (short) (buffer[ISO7816.OFFSET_LC] & 0xFF);
            if (p1 == (byte) 0x00 && p2 == P2_VERIFYCERT) {
                if (lc != TACHO_CERT_LENGTH) {
                    ISOException.throwIt(SW_WRONG_LENGTH);
                if (apdu.setIncomingAndReceive() != lc) {
                    ISOException.throwIt(ISO7816.SW_WRONG_LENGTH);
                try { // copy the certificate to be verified from APDU buffer to cert object
                    Util.arrayCopyNonAtomic(buffer, OFFSET_CDATA, cert, (short) 0, lc);
                } catch (Exception e) {
                    ISOException.throwIt(SW_TAMAM);
                if (Util.arrayCompare(keyStore.selected_KID, (short) 0, keyStore.ERCA_KID, (short) 0, KID_LENGTH) == 0) {
                    keyStore.VUCA_Cert.verifyCert(cert, keyStore.selectedPublicKey, keyStore.selected_KID);
                } else if (Util.arrayCompare(keyStore.selected_KID, (short) 0, keyStore.VUCA_Cert.CHR, (short) 0, KID_LENGTH) == 0) {
                    keyStore.VU_Cert.verifyCert(cert, keyStore.selectedPublicKey, keyStore.selected_KID);
                } else {
                    ISOException.throwIt(SW_CERT_VERIFICATION_FAILED); // Selected keyId, with MSE, is neither ERCA_KID nor VUCA_KID
            } else {
                ISOException.throwIt(SW_CERT_VERIFICATION_FAILED);
            return;
        private short processGetChallenge(APDU apdu, boolean protectedApdu) {
            byte[] buffer = apdu.getBuffer();
            byte p1 = (byte) (buffer[OFFSET_P1] & 0xff);
            byte p2 = (byte) (buffer[OFFSET_P2] & 0xff);
            if (p1 != 0 || p2 != 0) {
                ISOException.throwIt(SW_WRONG_P1P2);
            random.generateData(Rnd3, (short) 0, (short) 8);
            short Le = apdu.setOutgoing();
            if (Le != (short) 8) {
                ISOException.throwIt(SW_WRONG_LENGTH);
            Util.arrayCopyNonAtomic(Rnd3, (short) 0, buffer, (short) 0, (short) 8);
            return Le;
        private void processMSE(APDU apdu) {
            byte[] buffer = apdu.getBuffer();
            if (buffer[OFFSET_P1] == (byte) 0xC1 && buffer[OFFSET_P2] == P2_DST) {
                short lc = (short) (buffer[OFFSET_LC] & 0xFF);
                if (lc != (short) (KID_LENGTH + 2)) {
                    ISOException.throwIt(SW_WRONG_LENGTH);
                if (apdu.setIncomingAndReceive() != lc) {
                    ISOException.throwIt(ISO7816.SW_WRONG_DATA);
                if (buffer[OFFSET_CDATA] != (byte) 0x83) {//check the tag of the data
                    ISOException.throwIt(SW_SECURE_MESSAGING_DATA_OBJECTS_MISSING);
                } else if (buffer[OFFSET_CDATA + 1] != (byte) 0x08) {
                    ISOException.throwIt(SW_INCORRECT_DATA_OBJECT); // check if the key is already selected one
                } else if (Util.arrayCompare(buffer, (short) (OFFSET_CDATA + 2), keyStore.selected_KID, (short) 0, KID_LENGTH) != 0) {
                    if (Util.arrayCompare(buffer, (short) (OFFSET_CDATA + 2), keyStore.ERCA_KID, (short) 0, KID_LENGTH) == 0) {// KID is EUR_KID
                        keyStore.selected_KID = keyStore.ERCA_KID;
                        keyStore.selectedPublicKey = keyStore.eurPublicKey;
                        keyStore.Selected_Cert = null; // ERCA public key is selected
                        return;
                    } else if (Util.arrayCompare(buffer, (short) (OFFSET_CDATA + 2), keyStore.VUCA_Cert.CHR, (short) 0, KID_LENGTH) == 0) {// KID is MSCA_KID
                        keyStore.Selected_Cert = keyStore.VUCA_Cert;
                    } else if (Util.arrayCompare(buffer, (short) (OFFSET_CDATA + 2), keyStore.VU_Cert.CHR, (short) 0, KID_LENGTH) == 0) { // KID is VU_KID
                        keyStore.Selected_Cert = keyStore.VU_Cert;
                    } else {
                        ISOException.throwIt(SW_REFERENCE_DATA_NOT_FOUND);
                    }// KID not found
                    keyStore.selectedPublicKey = keyStore.Selected_Cert.publicKey;
                    keyStore.selected_KID = keyStore.Selected_Cert.CHR;
                } else { // if the KID is already set, just return
                    return;
            } else {
                ISOException.throwIt(ISO7816.SW_WRONG_P1P2);
        private void processSelectFile(APDU apdu) {
            byte[] buffer = apdu.getBuffer();
            short lc = (short) (buffer[OFFSET_LC] & 0x00FF);
            // retrieve p1p2 from apdu buffer
            byte p1 = buffer[OFFSET_P1];
            byte p2 = buffer[OFFSET_P2];
            short p1p2 = Util.makeShort(p1, p2);
            apdu.setIncomingAndReceive();
            if (p1 == 4) {
                if (lc == (short) TACHO_AID_LENGTH) {
                    if (Util.arrayCompare(buffer, (short) OFFSET_CDATA, TACHOGRAPH_AID, (short) 0, (short) TACHO_AID_LENGTH) == 0) {
                        selectedFile = fileSystem.getDT();
                        fileSystem.selectDT();
                        volatileState[0] |= FILE_SELECTED;
                        return;
                    } else {
                        ISOException.throwIt(ISO7816.SW_WRONG_DATA);
                } else if (lc != 2) {
                    ISOException.throwIt(SW_WRONG_LENGTH);
                short fid = Util.getShort(buffer, OFFSET_CDATA);
                if (fileSystem.getFile(fid) != null) {
                    selectedFile = fileSystem.getDT();
                    fileSystem.selectDT();
                    volatileState[0] |= FILE_SELECTED;
                    return;
            } else if (p1 == 2) {
                if (lc != 2) {
                    ISOException.throwIt(SW_WRONG_LENGTH);
                short fid = Util.getShort(buffer, OFFSET_CDATA);
                if (fileSystem.getFile(fid) != null) {
                    selectedFile = fileSystem.getFile(fid);
                    volatileState[0] |= FILE_SELECTED;
                    return;
            } else {
                ISOException.throwIt(ISO7816.SW_WRONG_P1P2);
            setNoFileSelected();
            ISOException.throwIt(ISO7816.SW_FILE_NOT_FOUND);
        public static void setNoFileSelected() {
            if (hasFileSelected()) {
                volatileState[0] ^= FILE_SELECTED;
        public static boolean hasFileSelected() {
            return (volatileState[0] & FILE_SELECTED) == FILE_SELECTED;
        public static boolean hasMutuallyAuthenticated() {
            return (volatileState[0] & MUTUAL_AUTHENTICATED) == MUTUAL_AUTHENTICATED;
        static boolean isLocked() {
            return (persistentState & LOCKED) == LOCKED;
        public boolean isSelectedFileEncrypted() {
            return ((selectedFile.getAccessConditions() & DigitalTachograph.ENCRYPTED) == DigitalTachograph.ENCRYPTED);
    }

  • Acrobat Reader 10.6.1 for Android OS

    I was unable to add comments / notes to a protected document (with security password to disable printing and editing, but allowing commenting) on Acrobat Reader 10.6.1 for Android OS. Is there a difference in behaviour of commenting feature between the Windows desktop acrobat reader and reader for Android devices?

    The current Mobile Reader cannot modify password protected forms.  This is a popular request, and is something that may be incorporated into a future release.
    Thanks,
    Adobe Reader Team

  • Fixed ratio for crop tool

    I do a lot of photo cropping. Is it possible to set a fixed
    ratio for
    the crop tool? It can be done with the marquee tool, why not
    the crop tool.
    I know about Shift-Drag to constrain crop marquee.
    Thanks for any help,
    Martin

    Interesting, I'm getting the same thing over here. So you're
    not alone
    Marty. (FWs8 on winxp-home)
    You could use a mask if the crop is relatively small?
    Peter
    "marty" <[email protected]> wrote in message
    news:elg7ua$7mb$[email protected]..
    | Thomas Unger wrote:
    | > marty:
    | > I've never experienced that symptom (fw8 on
    winxp-pro). In fact I've
    used
    | > this method for several versions of fireworks on
    several platforms (mac
    and
    | > win) without seeing that, so I'm not sure what to
    suggest. Could be a
    | > keyboard shortcut conflict--unless it happens with the
    mouse as
    well... -Tom
    | > Unger
    |
    | I have fw8 on winxp-pro as well. It's a new installation of
    fireworks; I
    | have not changed any keyboard shortcuts from the default
    set.
    |
    | It happens with both the mouse and keyboard shortcut (C).

  • Integration of SAP with MS Office & Adobe Acrobat Reader using OLE

    Hi Friends,
    I have to integrate MS Office 2003 and ADOBE Acrobat reader with SAP very much like that demonstrated in SAPRDEMODOCUMENTCONTAINER program given in the control examples by SAP. But the problem is, the code I am developing and even in the one given by SAP has some problems in them. They are:
    (1) When a MS Word or any application is opened, many of its attributes are
    disabled like CTRL+ N for opening new document and CTRL+ O for opening
    an existing file and many others.
    (2) When I try to open an existing file using the recently used list, it is opening in
    a new window but my requirement is to open it in the same window in which
    the application frame is displayed over SAP screen.
    (3) I am following the same procedure that is used in the above said example and
    unable to understand the way methods of the inner most interface are implem-
    ented like method CONTAINER_CONTROL->CREATE_DOCUMENT that is
    called from within I_OI_DOCUMENT_PROXY~CREATE_DOCUMENT method. I
    am clueless how it is working.
    Please guide me how to solve the problem along with some good reference material that you can suggest me to study.
    Thanks & Regards
    Aditya P. Srivastava

    Hi Adiya,
    You need to pass the parameter 'open in place' to word file in same window.
    CALL METHOD DOCUMENT->OPEN_DOCUMENT
                        EXPORTING OPEN_INPLACE = 'X'
    Regards,
    karthik.

  • Use fixed resolution at all times?

    I have a Logitech C920 webcam, and it's connected by USB to my Mac Mini (Mavericks 10.9.1, Skype 6.12 (431)). My Mac Mini has a wired connection to my 120Mb cable service (so I'm not using wireless), and is connected by HDMI to a Sony Bravia TV. Sadly, I regularly encounter video lag of 2-3 seconds, i.e. I can see myself in the smaller chat window and my actions/movements are clearly 2-3 seconds behind the audio. This is how the person I'm calling experiences it, too - they hear what I'm saying but the video is lagging 2-3 seconds behind.
    However, having investigated this problem further, I believe I've discovered something of use - in my case, my audio and video go out of sync when Skype changes resolution on the webcam of its own accord. I noticed this because the image of myself in the chat window would be close up (which is how I've set the zoom), and looked like a 4:3 image. Then it would spontaneously change to what appeared to be a widescreen shot, 16:9 style. As soon as it switched to the "widescreen" image, the video would start to lose sync and drop behind the audio. Remembering the technical call information window, I popped that open during my next call and waited to see what happened. It took me a couple of goes to pick it out from the raft of information, but basically when the webcam was broadcasting in 640x480, it would run fine and the video would not lag. However, when Skype switched to 1280x720, the image would go "widescreen", and the lag would kick in. 
    I've found that if I turn the camera off and on during the call, it defaults back to 640x480, and again the lag disappears. It will eventually go back to 1280x720, though, and the problem immediately reappears. So it would appear that this problem is directly caused by the resolution that Skype is using.
    As such, what I need is to force Skype to use 640x480 resolution at all times - I have no doubt at this point that this will solve my problem - but I don't know of a way to do this on the Mac.
    Any ideas on how to do this would be greatly received! Thanks in advance for any assistance you can provide.
    Rock, Neil?? I don't know if you looked before you took off, but the planet's MADE of rock!

    Try the latest version of Skype (6.15)
    http://www.skype.com/en/download-skype/skype-for-mac/downloading/
    Our greatest weakness lies in giving up. The most certain way to succeed is always to try just one more time.
    If you found my post useful, please give "Kudos".
    If it helped to answer your problem/question, please mark it as "Accepted Solution" so other people can find it easily.

  • Acrobat reader 10.0.x for windows and flash player update

    i don't understand why my client require the update of reader (update of 10.0.1), but in the download page (.msp file) i can't find nothing. the other problem was about the update of flash player....i need to distribute the update over GPO, but adobe doesn't release from download page....is because the update are integrated in acrobat reader new release?
    the metod is wrong! security is very important and release the updated version of software is also foundamental! IT Pro need an update (.msp or .msi) for the reader and for player.....faster not when you want
    so....how you think to resolve this problem? how i can resolve my problem about the update?

    Here you'll find the msi and msp files for the Acrobat Reader ("reader" folder on ftp) and Acrobat Pro ("acrobat" folder on ftp). ftp://ftp.adobe.com/pub/adobe/ . Save the link to your bookmarks.
    For updating/installing Flash Player you'll have to go over here: http://www.adobe.com/products/flashplayer/fp_distribution3.html
    There's a distribution license needed to deploy the flash player (don't ask my why the hell you'll have to get a license to deploy it in internal environments, although you can download and install it without the license).
    Best of luck, i needed a hole day to preparing deployment of cs5.5 and flash player etc. because of lack of information or consistency at the adobe pages and different methods for diffrent products. There should be a way to charge adobe the time it needs to get started, because they earn a damn lot of money with their cs products so they should provide better methods to do these tasks... but thats an endless story, because they're a monopolistic global player i think they aren't really interested in the needs of customers. There's not a real alternative, especially in education you're bound to use it, so you're gonna buy it anyway...

  • Rotating pages in in Acrobat Reader using Javascript + AIR

    Greetings,
    Currently we're building an application to view pdf files in an AIR application.
    We communicate with a javascript code, embedded in the PDF.
    Now, we want to rotate the pages of the document, but we cannot get this to work...
    Zoom, page up, page down, those work fine,
    but when we try to set the rotation for the pages, nothing happens.
    We also found rumours that rotating pages won't work in Acrobat Reader 9, but we need to be sure.
    all the help is appreciated!
    Regards,
    Mario
    //-----------------Do not edit the XML tags--------------------
    //<Document-Level>
    //<ACRO_source>0000000000000000</ACRO_source>
    //<ACRO_script>
    /*********** belongs to: Document-Level:0000000000000000 ***********/
    function myOnMessage(aMessage)
        if (aMessage.length==1)
            app.alert(aMessage[0]);
            switch(aMessage[0])
                case "ZoomIn":
                    zoom *= 2;
                    break;
                case "ZoomOut":
                    zoom /= 2;
                    break;
                case "PageUp":
                    pageNum--;
                    break;
                case "PageDn":
                    pageNum++;
                    break;
                case "rotateClockWise":
                    app.alert("rotating, rotating, rotating...rawhiiddde!!");
                    this.setPageRotations(0,1,90);
                     app.alert("rotated?");
                    break;
                case "pageFit":
                    zoomType = zoomtype.fitP;
                    break;
                case "pageWidth":
                    zoomType = zoomtype.fitW;
                    break;
                default:
                    app.alert("Unknown message: " + aMessage[0]);
        else
            app.alert("Message from hostContainer: \n" + aMessage);
    function myOnDisclose(cURL,cDocumentURL)
        return true;
    function myOnError(error, aMessage)
        app.alert(error);
    var msgHandlerObject = new Object();
    msgHandlerObject.onMessage = myOnMessage;
    msgHandlerObject.onError = myOnError;
    msgHandlerObject.onDisclose = myOnDisclose; this.hostContainer.messageHandler = msgHandlerObject;
    //</ACRO_script>
    //</Document-Level>

    We also found rumours that rotating pages won't work in Acrobat Reader 9, but we need to be sure.
    A product with the name 'Acrobat Reader 9' doesn't exists.
    With Adobe Acrobat you can rotate pages. Read the documentation in the Acrobat Javascript Reference.

  • Adobe reader print current view and snapshot tool inoperable

    Print current view is inoperable in part of the document snapshot tool is inoperable in all of the document, why?
    I am trying to print a two page pdf in larger print and can't figure out how to do it.

    oooooooooooooooooooooooooooook.  I tried that, but Adobe reader froze so hard, I had to do a hard boot.  Don't ever start Adobe Reader then go to straight to "help". When I exited help,  I got a red screen which had "legal notices" and "credits".  Clicking on either of those worked.  When I tried to exit, I just got a beep.  When I tried to close with the task manager it said that the program was locked and could not be closed.  When I tried to soft re-boot my whole system froze.  Only a hard boot got me out of the frozen Adobe reader.
    Now back to the task at hand.  Fit does nothing.  To make the document readable, I have to zoom to 125%, but zoom does not influence type size except in "current view", To print a two page document, I have to do 26 "current views".  I NEED the snapshot tool, why is it inoperable?

  • Help for Acrobat Reader 7.0.9 for AIX run in command line

    I have a batch job, will call acrobat reader to convert pdf format to ps, then print it to printer.
    cat test.pdf | /usr/bin/acroread -toPostScript | pdpr -dPRNTEST
    the problem is, my AIX desnot support X Window,
    How to setup DISPLAY value, so, I can call acroread in command line
    $ /usr/bin/acroread
    (acroread:17382): Gtk-WARNING **: cannot open display:
    I saw some reply before, this version 7, need setup DISPLAY, but I login by SSL, without X Windown support, How can I setup this DISPLAY value?
    Thanks a lot.

    I sort my problem, this may be not the best solution, <br /><br />I review last few replies, try to understand what go wrong, it may be 7.0.9 weakness - <br /><br />mysolution:<br />install xwing on my PC<br />login AIX 5L server by putty<br />#export DISPLAY=<myipaddressxxx.xxx.xxx.xxx>:0.0<br /><br />then, <br />#acroread -toPostScript a.pdf a.ps<br /><br />Works:-)

  • Acrobat Reader DC - Bug with Dialog Boxes Containing Images?

    Hi all -
    Been testing Reader DC.  Only took a couple of minutes to adjust to the new interface; pretty slick and intuitive.
    Noticed a potential issue that I wanted to warn/share/prob solve with the community.
    I was putting Reader DC through it's paces with a XFA PDF that has some dialog boxes, some of which even had images in them.  (Thanks again to BR001.)
    The dialog boxes with images look great on Acrobat & Reader 9/10/11 (WIN & MAC) - images are clear; no pixelation.
    Reader DC on MAC appears to be fine - resolution looks the same.
    But Reader DC on WIN - the images are now pixelated. Especially around the edges, characters/numbers, etc.  You can tell something is "off" with the image.
    A few simple side-by-side tests can be seen at links below.  Reader DC is on left; Acrobat 9 (9.5.5) is on right.
    Green smiley face: Dropbox - icon differences.PNG (83 x 83)
    Lightroom image: Dropbox - Lightroom Image - Comparison Test.PNG (225 x 132)
    Reader DC banner image: Dropbox - Reader DC Banner--- Comparison test.PNG  *MOST VISIBLE ON THIS EXAMPLE (ironically) (422 x 45)
    Simple banner with words image: Dropbox - Simple Banner - comparison test.PNG (342 x 100)
    PDF containing the 4 buttons that triggered these dialog boxes: Dropbox - Dialog Boxes with Images - PDF - LC community.pdf
    Bug in Reader DC for Windows? Not sure what else the cause could be...
    Anyone having their dialog boxes with images open in Reader DC for Windows WITHOUT the pixelation?
    FYI/thoughts/ideas/suggestions/confirmations?  Hmmm.....
    Brian

    Little easier; picture's worth a thousand; etc.
    Shortcuts to zoom in/out further for most web browsers: ("ctrl" & "+") or ("ctrl" & "-");

  • My privacy setting is stuck on Remember history, won't stay on Use custom settings for history after I set and click ok

    When I go into Tools, Options, Privacy and set 'Use custom settings for history' and then click okay it will not save. It stays on 'Remember history', though it will save 'Never remember history' as I tested this. This seems to have happened after recent Firefox latest update. Does anyone know why I can't choose 'Use custom settings for history' as this is the setting I want to use?

    It's not that I'm not satisfied with the current settings, it's just that I'm one of those curious people - wanting to know why suddenly I couldn't change my history setting when I could always chop and change it before to a setting of my choice. I noticed this has happened since recently updating to Firefox 6. When things like this just happen I always search for a reason. Anyway, it sounds as though I am a bit of a novice on Firefox compared to yourself, and if you recommend that it's probably best to stay on Remember History and it's not likely to cause any problems, then say no more, I shall accept your advice. Any more tips would be greatly appreciated! Thanks.

  • Setting different resolutions for different displays?, setting different resolutions for different displays?

    Hi,
    I have a 30" dell display that I have used with my MBP. I recently got a MBA and installed mountain lion.  One of the things they inexplicably removed was the ability in the menu bar to set different resolutions for different displays. The only way I can get my Dell Monitor to work is to use mirroring. But I don't want mirroring. I want two separate displays.  In Snow Leopard, the drop down display menu in the menu bar allowed you to pick different resolutions for different displays. Is there any possible way to do that in Mountain Lion?
    Tom

    Yes, assuming that the 8" display has a resolution that the Mac can support. When you open the Displays system preference, you'll get a settings window on each display (as long as the option for Mirroring isn't checked).
    Regards.

  • How to open url in acrobat reader using command line

    Hi,
    I need to open file from url using command line, but I'm still getting some error (wrong filename).
    I've tried for example this command:
    AcroRd32.exe http://www.adobe.com/devnet/acrobat/pdfs/pdf_open_parameters.pdf
    Can anyone help me and tell me what's wrong?

    You can't use a URL as parameter for AcroRd32.exe.

  • Acrobat 8 - Settings or preferences for Line Tool??

    A colleague using Acrobat 8 can't use the line tool without having the lines snap to predetermined angles. I've looked in the preferences to no avail. The ability to turn this on/off is not located in the Commenting category of Prefs, nor does turning snap off in the Measuring categories resolve the issue. There is no Markup category in Prefs, so where do I find it?
    Thanks
    [EDIT] Wow, never mind. He had Snap to Grid turned on...

    Probably has snap to grid checked under the view menu.

Maybe you are looking for

  • Texts between iPhone 4S on same account not sending or receiving

    My husband and I both just got new iPhone 4S devices and we are not having trouble texting anyone else - but each other.  I checked Call Block and see that you can't block phone numbers from the same account.  His number is primary and my number is a

  • Connecting laptops to wireless APs using RADIUS 802.1x and certificates set-up questions

    I am working at a small school with 25 laptops for a mobile cart. We upgraded to new dual radio APs and I want to set up the laptops to connect to the APs and validate user credentials at logon. The person before me made a generic username "Student"

  • Maintenance order header long text copy into PR header text

    Dear all, Can anyone please let me know how I can copy the Maintenance order header long text into the PR header text of service or component PR. Thanks in advance. Regards, Vineet Edited by: vineet sharma on Oct 19, 2011 1:23 AM

  • SLT on sandbox Hana server 01- possible?

    Guys, Is it possible to test SLT or BODS on Hanasvr-01 ( provided as sandbox access by SAP)? If so, can you please let me know how to use it ? If not, can you point me to some documentation of using SLT/BODS 4.0. Thanks

  • Funds Management and Fiscal Year Variant Change

    Hello ! We are configuring a new fiscal year variant. Currently, the system is on a CALENDAR YEAR FY variant and we are doing the following: 1. creating a shortened FY of Jan 2009 - Mar 2009 2. new fiscal year from April 2009 - Mar 2010 We are trying