What is the best way to find what version of PDF Reader from Adobe is installed on a windows OS?

Hi,
I am developing a .Net App in which i want to find which version of PDF Reader from Adobe is installed on an Windows OS.
It can be any of the software
Adobe Reader
Adobe Acrobat X Pro
or any other.
How to find out?

The best way would be to find and query the AcroRd32.exe executable. The file version information is stored in the executable itself.
There are lots of places in the registry that you could also potentially access relevant information.
For example the uninstall string:
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall
Contains a string that you could use to search for the application version.
How you would do this in .NET I'm not sure but you would use some kind of text search command to search for the relevant text and then use "if exists" condition.

Similar Messages

  • What is the best way to find and remove unneeded language files from Mac OS X 10.8.4?

    I have tried Spring Cleaning and it finds the files and then quits!

    You can do this with a *FREE* utility called Monolingual.  Another app that apparently does all the work for you.  I’ve used it since Tiger w/never any problems.  Just make sure you read all of the instructions.
    However, there is a warning for *native English speakers*. Make sure you keep BOTH English and English (United States).
    Works on OS X 10.8 (Mountain Lion)

  • What is the best way to ensure broadcast-ready files to DMDS from Adobe Premiere Pro CC?

    After submitting my 708 closed-caption HD video to DMDB for broadcast they said there were no captions.
    I initially exported the video as a .MXF file from Premiere Pro CC. In my source preview window the closed captions appear, but for some reason DMDS could not read them. Im looking for a way to get closed-caption videos broadcast ready for submittal to DMDS.
    In addition, when close-captioning for 708, the closed caption text appears with dots between each character in a word, and the background color is shifted to the right, leaving the first letter of each caption hangin out of it's background. Im assuming it's a Premiere Pro CC glitch, but I'd like to be able to communicate this with some certainty to any clients who may ask about it.
    Pleas advise.

    Very interesting.
    I'm about to submit HD captioned spot for Extreme Reach, they specify only an mpeg2 transport
    stream for keeping the captioning data.
    I did the 608 and 708 captions just above the video 1 track in premiere cc and they check
    out when setting the caption previewer to 608 or 708 in the program monitor.
    if I import that mpeg2 file BACK into premiere and play it the captions
    are not showing.
    I Just now exported an .mxf and saw an option to EMBED captions in the file
    instead of just the side car option normally there.
    THAT WORKED!  re-importing to premiere I see the captioning on track 2 and 3
    and they do play.
    But Extreme Reach requires the captioning in an mpeg2 TS container, not mxf.
    I tried converting the mxf to mpeg TS but the captioning gets stripped out.
    any ideas or suggestions?

  • What is the best way to find a file on the servers disk without using web.xml?

              What is the best way to find a file on the servers disk without using web.xml?
              I want to find a configuration file not contained within the war file I have
              created. Is there a way to pass information into the ServletContext with out
              rebuilding the ear or war files? Tomcat 4.0 can do this in its server configuration
              files. Does BEA have the equivalent?
              Regards,
              Eric
              

    You can specify the path to the file as a system property
              eg
              java -Dconfig.file.location=./mydirecotry/myfile.txt com.test.MyApp
              "Eric White" <[email protected]> wrote in message
              news:[email protected]..
              >
              > What is the best way to find a file on the servers disk without using
              web.xml?
              > I want to find a configuration file not contained within the war file I
              have
              > created. Is there a way to pass information into the ServletContext with
              out
              > rebuilding the ear or war files? Tomcat 4.0 can do this in its server
              configuration
              > files. Does BEA have the equivalent?
              >
              > Regards,
              > Eric
              

  • There are way too many photos on my internal hard drive. I have older libraries, and newer libraires in iPhoto and Aperture 2.  What is the best way to find and reduce the number of duplicate photos/libraries  before upgrading to Aperture 3?

    There are way too many photos on my internal hard drive. I have older libraries, and newer libraires in iPhoto and Aperture 2.  What is the best way to find and reduce the number of duplicate photos/libraries  before upgrading to Aperture 3?

    Sharon-
    Good idea.
    Back up first.
    I would probably wait for the merge function of the latest version before merging. Be sure to verify every merge.
    Merge Libraries, then from within Aperture move images to referenced on external hard drives.
    HTH
    -Allen

  • What is the best way to find the size of files?

    What is the best way to find the size of my files?

    Select a file or folder in the Finder and choose Get Info from the File menu.
    (125056)

  • What is the best way to have access to OSX and OS9 from the same machine?

    What is the best way to have access to OSX and OS9 from the same machine?
    Do I need to partition the hard drive? Installed both Tiger and OS 9 on the G5 and it is having problems starting up properly.
    G5   Mac OS X (10.4)  

    And here is the prove for Edwin's message: Macintosh: Some Computers Only Start Up in Mac OS X

  • What is the best way to manage tasks?  I have moved from outlook and only have mail and ical

    What is the best way to manage tasks.  I have moved from a pc with outlook and have lost 'tasks' in that programme.  Do I have to rely on ical or can I download an app to manage business tasks?

    iCal does have reminders but its implementation of tasks is pretty wimpy. There are a number of programs that are better geared to the job. I was a level 4 procrastinator until I discovered Getting Things Done and for me Things is perfect. It lets me handle projects which are dependent upon multiple tasks in a no-nonsense easy fashion. Much less expensive and really not much more than a list maker is Wunderlist. Thankfully there's a ton of shareware offerings - check out MacUpdate.com and see what works for you.

  • What's the best way to delete 2.4 million of records from table?

    We are having two tables one is production one and another is temp table which data we want to insert into production table. temp table having 2.5 million of records and on the other side production table is having billions of records. the thing which we want to do just simple delete already existed records from production table and then insert the remaining records from temp to production table.
    Can anyone guide what's the best way to do this?
    Thanks,
    Waheed.

    Waheed Azhar wrote:
    production table is live and data is appending in this table on random basis. if i go insert data from temp to prod table a pk voilation exception occured bcoz already a record is exist in prod table which we are going to insert from temp to prod
    If you really just want to insert the records and don't want to update the matching ones and you're already on 10g you could use the "DML error logging" facility of the INSERT command, which would log all failed records but succeeds for the remaining ones.
    You can create a suitable exception table using the DBMS_ERRLOG.CREATE_ERROR_LOG procedure and then use the "LOG ERRORS INTO" clause of the INSERT command. Note that you can't use the "direct-path" insert mode (APPEND hint) if you expect to encounter UNIQUE CONSTRAINT violations, because this can't be logged and cause the direct-path insert to fail. Since this is a "live" table you probably don't want to use the direct-path insert anyway.
    See the manuals for more information: http://download.oracle.com/docs/cd/B19306_01/server.102/b14200/statements_9014.htm#BGBEIACB
    Sample taken from 10g manuals:
    CREATE TABLE raises (emp_id NUMBER, sal NUMBER
       CONSTRAINT check_sal CHECK(sal > 8000));
    EXECUTE DBMS_ERRLOG.CREATE_ERROR_LOG('raises', 'errlog');
    INSERT INTO raises
       SELECT employee_id, salary*1.1 FROM employees
       WHERE commission_pct > .2
       LOG ERRORS INTO errlog ('my_bad') REJECT LIMIT 10;
    SELECT ORA_ERR_MESG$, ORA_ERR_TAG$, emp_id, sal FROM errlog;
    ORA_ERR_MESG$               ORA_ERR_TAG$         EMP_ID SAL
    ORA-02290: check constraint my_bad               161    7700
    (HR.SYS_C004266) violatedIf the number of rows in the temp table is not too large and you have a suitable index on the large table for the lookup you could also try to use a NOT EXISTS clause in the insert command:
    INSERT INTO <large_table>
    SELECT ...
    FROM TEMP A
    WHERE NOT EXISTS (
    SELECT NULL
    FROM <large_table> B
    WHERE B.<lookup> = A.<key>
    );But you need to check the execution plan, because a hash join using a full table scan on the <large_table> is probably something you want to avoid.
    Regards,
    Randolf
    Oracle related stuff blog:
    http://oracle-randolf.blogspot.com/
    SQLTools++ for Oracle (Open source Oracle GUI for Windows):
    http://www.sqltools-plusplus.org:7676/
    http://sourceforge.net/projects/sqlt-pp/

  • What's the best way to handle new versions of software?

    So we have an Application setup for Adobe Reader (just using Reader as a general example) which is part of our Task Sequence.  When Adobe releases a new version of Reader, what's the best way to handle getting the new version into our SCCM setup.
    I know I can create a new application and do it all over and select the new file, but can I simply replace the files that the application is pointing to and then somehow tell it to update the DPs with the new files?  I'd rather not have to create new
    applications every time if I don't have to.
    Thanks.

    I think continue the way you are doing right now by creating a new application each time there is a version change. Its a clean way to do and this helps with Application life cycle mgmt aswell where you keep track of versions across the environments and
    eventually retire an application. Specially where no changes are made without a change control. This is completely process specific and may not be applicable.
    i do agree with above posted comments about using supercedence option.
    However most of the apps comes with upgrade capabilities from previous versions. So you can upgrade existing version with new one if you do not wish to use supercedence. 
    Thanks 

  • What is the best way to find and apply the samples in the sap library

    I am a fresh man in the process of learning sap .
    Mainly aim at the MM and SD model .
    They all say that the best way to accomplish the task is to follow the sap on-line help.
    because i don`t know the struts of the library , so to find what i need in the library becomes impossible for me as the library includes a lot of files .
    so please some one help me to direct the struts of the library and teach me the way how to find what i want ?
    thanks

    Hi,
    This forum is for BPX. Post Solution related quries in SAP Solution Forums.
    You can access MM and SD help at:
    http://help.sap.com/erp2005_ehp_02/helpdata/en/80/ea89395eb58c4f9d0c3e837cf0909d/frameset.htm under Logistics
    or http://help.sap.com/ -> SAP ERP -> Choose Release (for example SAP enhancement package 2 for SAP ERP 6.0) -> SAP ERP Central Compoennt (MM and SD under Logistics)
    From Materials Management Link you can navigate further to Purchasing, Inventory Management etc. From Sales and Distribution you can naviate further: Sales, Billing etc.
    For example to see help regarding Purchase Orders:
    You would first expand Logistics and choose Materials Management in Help Link for ERP Central Component. Here, choose Purchasing Node which will take you Purchasing Help screen -> Click and Purchase Orders Node and Expand the same for more information regarding Purchase Orders.
    You should be comfortable with SAP help link.
    Regards,
    Naveen.
    Search the forum with keywords before posting the query.

  • What is the best way to get/change data in R/3 from external interface?

    Hi SAP gurus,
    I have a problem to know what is the best technology to access and maintenance all SAP functionality and data too in R/3 systems.
    Anyone know if connectors (.NET or JCO) are the only solution to manipulate all SAP system data or exist other way?
    One thing more, what is the best connector, with more functionality?
    E.g. The screen painter was made in C++ and is executed by user event in R/3 system, so would like to know if it's exist any way to do the same but replace the screen painter to another custom application?
    Regards

    Hello Vitor
    Not all functions and data are externally accessible. Only those business objects (e.g. like sales order, customer, material) for which BAPIs are available (transaction BAPI ) can be accessed via RFC.
    Regards,
        Uwe

  • What's the best way to create and edit a PDF where the source document is also a PDF?

    Hi,
    To be specific, we are in the process of upgrading our A/P processes and we have received a user manual from the company we contracted for the upgrade. I've been tasked with customizing this manual for my company's specific processes (this is with the permission).
    What is the best course of action to accomplish this? I thought I should save a copy of the manual, and then modify each page as necessary. I will be adding and deleting text and graphics. I have never used Acrobat before, but consider myself a quick study.
    Any suggestions wil be greatly appreciated.

    When Acrobat saves to Word 97-2003 format, it actually writes a Rich Text Format file - the binary .DOC format used by Word is a closed standard. The .DOCX format is just XML, and neither export process cares if you have Office installed or not. In theory, OpenOffice can read both types of file; but there does tend to be some minor difference between how OO arranges things and how MS Word does it.
    The critical thing is that if the PDF file has structure tags (i.e. it's accessible), Acrobat can flow the content properly in the exported file and can identify things as headers, quotes, lists, tables, etc. If not, it has to guess what the reading order is based on where things are on the page, and it will often get confused by intricate layouts, spanned columns, etc. There are of course some things (such as Word Art) which don't survive the trip to PDF and back, and will show as an image.

  • What's the best way to create XML file with a schema from a database table?

    Hi,
    I want to create an XML file from a database table (which has over 600 columns) using XML schema (.xsd file). I want to know the best way to do this.
    The output XML file is NOT a direct data dump from the DB table, there�re some logic around it, such as the XML file has some hierarchy with repeating tags.
    I have done this using JAXB by creating Java classes form XML schema, but I don�t want to map 600 DB columns to these Java classes manually, and loop through the record set to create repeating tags.
    I know there are few tools around now like MapForce (Altova), how do people do these now?
    Thanks,
    Chandi

    Can you use a schema when we compose XML doc from Database tables?
    Actually, I'm using SQL Server (sorry, wrong forum). But, I thought a Java tool would have a solution for me.

  • What is the best way to find out the underlying platform within AIR?

    I'd like to know whether Air is running on iOS, Windows, Android or Blackberry.

    Here's our Utuls_System class. It's a work in progress, incomplete, and does other stuff as well, but take a look at init() and isIOS() etc...
    package com.brightworks.util
        import com.langcollab.languagementor.constant.Constant_AppConfiguration;
        import flash.system.Capabilities;
        public class Utils_System
            public static const OS_CATEGORY__ANDROID:String = "osCategory_Android";
            public static const OS_CATEGORY__IOS:String = "osCategory_iOS";
            public static const OS_CATEGORY__MAC:String = "osCategory_Mac";
            public static const OS_CATEGORY__UNKNOWN:String = "osCategory_Unknown";
            public static const OS_CATEGORY__WINDOWS_DESKTOP:String = "osCategory_WindowsDesktop";
            public static const OS_CATEGORY__WINDOWS_MOBILE:String = "osCategory_WindowsMobile";
            private static var _isInitialized:Boolean;
            private static var _isMobileDevice:Boolean;
            //          Getters / Setters
            private static var _appHeight:int;
            public static function get appHeight():int
                init();
                return _appHeight;
            private static var _appWidth:int;
            public static function get appWidth():int
                init();
                return _appWidth;
            private static var _dpi:int;
            public static function get dpi():int
                init();
                return _dpi;
            private static var _osCategory:String;
            public static function get osCategory():String
                return _osCategory;
            //          Public Methods
            public static function getAppStoreName():String
                if (isIOS())
                    return "Play Store";
                return "App Store";
            public static function isIOS():Boolean
                return (osCategory == OS_CATEGORY__IOS);
            public static function isScreenResolutionHighEnough(requiredX:uint, requiredY:uint, isMobile:Boolean):Boolean
                init();
                if ((isMobile) && (!Utils_System._isMobileDevice))
                    // We're testing on the desktop, and can't check screen size
                    return true;
                if (Capabilities.screenResolutionX < requiredX)
                    return false;
                if (Capabilities.screenResolutionY < requiredY)
                    return false;
                return true;
            public static function isRunningOnDesktop():Boolean
                init();
                return !_isMobileDevice;
            //          Private Methods
            private static function init():void
                if (_isInitialized)
                    return;
                _isInitialized = true;
                _isMobileDevice = true;
                var operatingSystem:String = Capabilities.os;
                if (operatingSystem.indexOf("Windows") != -1)
                    switch (operatingSystem)
                        case "Windows XP":
                        case "Windows 2000":
                        case "Windows NT":
                        case "Windows 7":
                            _isMobileDevice = false;
                            _osCategory = OS_CATEGORY__WINDOWS_DESKTOP;
                            break;
                        default:
                            _osCategory = OS_CATEGORY__UNKNOWN;
                            Log.fatal(Constant_AppConfiguration.APP_NAME + " does not currently support this operating system. (" + operatingSystem + ")");
                else if (operatingSystem.indexOf("iPhone") != -1)
                    _isMobileDevice = true;
                    _osCategory = OS_CATEGORY__IOS;
                else if (operatingSystem.indexOf("MacOS") != -1)
                    _isMobileDevice = false;
                    _osCategory = OS_CATEGORY__MAC;
                else if (operatingSystem.indexOf("Linux") != -1)
                    // This won't work properly if developing on Linux, but I've spent multiple minutes
                    // trying to find out how to differentiate Android from other Linux versions, and
                    // haven't found anything that I'm confident will work for future versions of Android.
                    // Currently I get "Linux 2.6.32.9-g34b306d". I suspect that the "g" indicates "Google"
                    // but have found nothing to support this idea.
                    _isMobileDevice = true;
                    _osCategory = OS_CATEGORY__ANDROID;
                if (_isMobileDevice)
                    _appHeight = Capabilities.screenResolutionY;
                    _appWidth = Capabilities.screenResolutionX;
                else
                    _appHeight = 220;
                    _appWidth = 360;
                _dpi = Capabilities.screenDPI;

Maybe you are looking for