Applications: How does OS X Know Which App to Reference a File to?

I just got my new Macbook and while installing applications, a question I've had for a while came up again.
How does OS X know to reference applications to certain file types?
For example. I have a .avi I downloaded to watch, and downloaded VLC to watch it. I open the .dmg and drag/drop VLC to my Applications folder. Instantly, VLC appears in the "Open With" list for my .avi. How does it know to list it?
My theories are:
1. When dragging/dropping VLC, it's not just copying files, it's also doing some background stuff, including VLC telling OS X that it should be referenced for .avi files
2. When I "Open With" a file, OS X looks at apps in my Applications folder and detects applicable ones in some manner.
3. It's Voodoo magic.
How does it work? I hope my question makes sense.
Thanks!

From what I understand, the second the .dmg is opened and VLC is seen by OS X as an application, Launch Services asks VLC what filetypes to associate it with, and adds that to the database? Then when I try to "open with" a .avi, it sees that .avi is associated with QuickTime, and now VLC too.
that's right. inside the VLC application bundle there is a file called info.plist which contains among other things the info about which files VLC can handle. that file is consulted by the Launch services once it becomes aware of VLC being present in the system and that info is recorded in the launch services database. That's how it works with all applications. you can view this file if you want. control-click on VLC in finder and select "show package contents". in the new finder window that opens up go to Contens folder and quicklook the file info.plist.
Is this correct?
Thanks.

Similar Messages

  • How does Goods Issue know which Batches to deallocate from A/R Credit Memo?

    Hi,
    I am creating an addon that runs after a A/R Credit Memo is created.  It creates a Goods Issue, and enters the Item Code and the Quantity from the line items on the Credit Memo into the Goods Issue.
    After it writes the Goods Issue to SAP, I open up the document it created and see that the line items are in there correctly, and that somehow the batches assigned to those line items are also in there.
    There is nothing in the code that does anything with the Batches, but somehow SAP knows which batches to work with.
    I haven't been able to find any info about it.  Can you please help us understand what is happening?  How does SAP know and make assignments to batches in line items in Goods Issues?
    Thank you,
    Mike

    Hi Michael and Gordon,
    Sorry Gordon, I'm quite sure you misunderstood Michael original question. Michael asked how the add-on he created could link corresponding batch number from an A/R Credit Memo document could be selected by Goods Issue document which generated by the add-on, while he actually never wrote a code to select any batches numbers which available in the system.
    Maybe a little bit of illustration:
    1. Item A, qty 10 - (batch A qty 5, batch B qty 3, batch C qty 2)
    2. A/R Credit Memo occurred, return of Item A with 3 qty (batch A qty 1, batch B qty 1, batch D qty 1). Therefore, item A latest position should be (batch A qty 6, batch B qty 4, batch C qty 2, batch D qty 1). This A/R Credit Memo created by add-on.
    3. Goods Issue document triggered by add-on. The problem is, Michael never write any code to select any batch numbers, and somehow the system choose batch number precisely as occurred in number 2 (A/R Credit Memo document), which is (batch A qty 1, batch B qty 1, batch D qty 1). Therefore the stock position for Item A back to as being displayed in number 1.
    I believe this shouldn't be possible at all. Unless, there is a certain mechanism in SAP that automatically choose batch number to used in Goods Issue document using LIFO (Last In First Out), which is, as far as I know never exist in any SAP B1 version. Yes you could automatically choose batch numbers according to available batch, but you could do this when system prompt you when you tried to issue certain document using SAP application itself, not using add-on.
    And of course, you could write a code to choose certain batches based on certain A/R Credit Memo, but still, you need to write a code, you can't do this without a code, selection of batches is compulsory when you tried to add a goods issue document which consist of items that managed using batches.
    In my opinion, I think it is better for you to re-write those codes and relate batches you want to attach with your Goods Issue document based on corresponding A/R Credit Memo. It is much safer, and the error message you encountered won't happen again in the future.
    Best Regards,
    Hendry Wijaya

  • How does the scrollbar know which field it lands on?

    Hi all
    I'm looking at components at the moment. Not how to use them
    but how to create them yourself to increase your workflow.
    When dragging a scroll component on to a dynamic textfield it
    automatically determines which field it land on, and populate the
    targetInstanceName variable in the property inspector.
    How does it do that? I guess it's a jsfl file being run, but
    I can't figure out how to run a jsfl file the moment the user let
    go on the component.
    Thanks in advance,
    Jakob

    Hi Antony,
    There is no need of Sender Agreement and hence sender communication channel. Sender Agreement identifies three things,
    Namespace, Software component version and Outbound Interface. In Idoc communcation there is no need of Sender agreement as we can identify above things without Sender Agreement itself like namespace - Idocs have standard namespace and can be accessed across the sofwatware component versionsn and the idoc type it self specifies the interface name.
    You cannot define a sender IDOC channel in Integration Directory due to fact dat IDOC adapter does not run in J2EE AF but is an 'built in" adapter.
    Thanks,
    Vijay Kumar T.

  • SCOM 2012 - How does SQL MP "know" which instances are available and active?

    Using SCOM 2012 R2 with Microsoft's SQL MP 6.5.1.
    Getting alerts occasionally for issues with SQL instances which are later found to be not active any more or removed from the SQL server.
    Can someone explain how the MP determines which SQL instances are available?  Is it a matter of simply reading folder structures on the various mount points, reading registry?  Much appreciated for any tips.

    SCOM SQL MP will using discovery to discovery SQL instance. Once the SQL instance is discovery, the SQL instance object persist in the database even though the SQL instance is removed.
    Solution:
    To clean up the objects you can run the Remove-SCOMDisabledClassInstance Powershell cmdlet. Then all the relationships that involve objects related to a disabled discovery is deleted.
    Roger

  • How does my employer know which sites I visit during private browsing?

    My employer has told me that they have discovered that I have visited unsuitable sites. They must have found a way to get into my private browsing history. What can I do to prevent this from happening again?

    There are services that will encrypt all of your web browsing so that intermediate computers and firewalls don't know what you're doing. (However, this will not fool a company proxy server.)
    At this point, lots of secure traffic from your PC would look ''very'' suspicious. If your job is important to you, you probably should do your NSFW browsing from outside the company network.

  • I would like to know which app/software in MAC gives us the same feature that is provided by System Restore in Windows, and how does that work

    I would like to know which app/software in MAC gives us the same feature that is provided by System Restore in Windows, and how does that work.

    Time Machine is one such program, although it is a recursive backup program which offers limited archive capability, based on the capacity of the backup destination, and it requires you set it up before you start editing your files.   Some programs are also Versions aware, which offers a kind of restore capability by file.  Again needs to be setup before you start editing.
    Just a for-your-info:
    Mac is not an acronym, it is a nickname for Macintosh.

  • I updated to ios8 and tried to use Health Application. In Sources I get a message that other applications will show up on the list as they request permission to update your data. How does it happen? No apps are listed on my Sources section

    I updated to ios8 and tried to use Health Application. In Sources I get a message that other applications will show up on the list as they request permission to update your data. How does it happen? No apps are listed on my Sources section

    I have an answer to my question. There is a bug in IOS8 that prevents third party applications to talk to the Health Application. Apple is trying to fix it ASAP

  • Immutable Objects in multi threaded application - how does it works?

    Hi
    I have this code will work in multithreaded application.
    I know that immutable object is thread safe because its state cannot be changed. And if we have volatile reference, if is changed with e.g.
    MyImmutableObject state = MyImmutableObject.newInstance(oldState, newArgs); i.e. if a thread wants to update the state it must create new immutable object initializing it with the old state and some new state arguments) and this will be visible to all other threads.
    But the question is, if a thread2 starts long operation with the state, in the middle of which thread1 updates the state with new instance, what will happen? Thread2 will use reference to the old object state i.e. it will use inconsistent state? Or thread2 will see the change made by thread1 because the reference to state is volatile, and in this case thread1 can use in the first part of its long operation the old state and in the second part the new state, which is incorrect?
    Therad1:                                                  Thead2:
    State state = cache.get();     //t1                  
    Result result1 = DoSomethingWithState(state);     //t1    
                               State state = cache.get(); //t2
       ->longOperation1(state); //t1
                               Result result2 = DoSomethingWithState(state); //t2
                                   ->longOperation1(state); //t2
       ->longOperation2(state);//t1
    cache.update(result1);    //t1             
                                   ->longOperation2(state);//t2
                               cache.update(result2);//t2
    Result DoSomethingWithState(State state) {
       longOperation1(state);
       //Imaging Thread1 finish here and update state, when Thread2 is going to execute next method
       longOperation2(state);
    return result;
    class cache {
    private volatile State state = State.newInstance(null, null);
    cache.update(result) {
       this.state = State.newInstance(result.getState, result.getNewFactors);
    get(){
    return state;
    }

    Please don't cross post
    http://stackoverflow.com/questions/6803487/immutable-objects-in-multi-threaded-application-how-does-it-work

  • How does the system knows hire action first

    Hi all,
    Iam new to this community, recently i have joined as an SAP HR trainee ,and i am undergoing SAPHR training Programme.
    why can't the system allow us to do promotion action before Hire action?where do we configure this to make it happen, how does the system knows to do the Hire action first, where are the settings for this..
    Swathi

    hai
    there are a number of programmes running in the back groung when u do any application.
    the validations will be written in them
    when u try to do something through the programe running at the back ground does these validations  like the example u have taken when u do the promotion action it checks whether actions exists or not if not then it throws the error written in the program.
    regards
    nalla

  • HT4061 How does the find my phone app work?

    How does the find my phone app work?

    Welcome to Apple Support Communities
    The Find my iPhone app allows you to track all your devices with Find my iPhone (iPad, iPod or Mac) turned on. To enable Find my iPhone, open Settings > iCloud and turn on "Find my iPhone", so you will be able to track your iPhone through the application.

  • How does the system knows age or seniority is crossed for so and so... EE

    Hi Experts,
    In my project we have configured some Health plans based on ages and seniority,
    Employee can enroll in to the plan when they reach the age or seniority,
    my question is how does the system knows  age or seniority is crossed for so and so... EE, where exactly we do this setups
    Pleae let me know your valuable answers
    Regards
    Sreeni

    hr_entry_date and you can use various
    fm to calculate this, It reads 0019, 0041 or Hdate feature
    3QP8                           Time related calculation function mod.
    HR_AUPBS_SENIORITY             Calculate the whole length of service of employee
    3RP3A                          Leave schem proration modules
    SGPS_LS_SENIORITY_CALCULATION  Function for seniority calculation for Singapore Leave Scheme
    HRDO
    HR_DE_PBS_SENIORITY_PERIODS
    HRFPBS4AV0
    HR_PSF_AV_ANC_INPUT_SENIORITY
    HRF_METADATA_IT
    HRF_READ_SENIORITY_IT

  • Hi, I wanna know which app's are included in the Creative Cloud licence. Are some of them trial o life time?

    Hi, I wanna know which app's are included in the Creative Cloud licence. Are some of them trial o life time?

    Please check the app list from Explore Adobe desktop apps | Adobe Creative Cloud there are no products for life time trial, you will need to purchase within 30 days.
    Regards
    Rajshree

  • My daughter has an iPad mini, she would like to use iTunes $ to buy kindle books. Anybody know which apps I might need?

    My daughter has an iPad mini, she would like to use iTunes $ to buy kindle books. Anybody know which apps I might need?

    http://www.wikihow.com/Download-Kindle-Books-on-an-iPad
     Cheers, Tom

  • How does someone dispute an in-app purchase?

    How does someone dispute an in-app purchase?

    FOR ASSISTANCE WITH ORDERS - iTUNES STORE CUSTOMER SERVICE
    For assistance with billing questions or other order inquiries, please refer to our online support page by clicking here: http://www.apple.com/support/itunes/store/. If you cannot find the answers you are seeking in our robust knowledge base, you can contact us by visiting the following URL http://www.apple.com/support/itunes/store/, clicking on the appropriate Customer Service topic, then using the contact button or email form at the bottom of the page. Responses to emails will be provided as soon as possible.
    Phone: 800-275-2273 How to reach a live person: Press 0 four times
    Hours of Operation: Mon-Fri: 9am-5pm ET
    Email: [email protected]
     Cheers, Tom

  • How does disk utility decide which optical drive to use for burn?

    This is a somewhat daft question and purely out of interest.
    How does disk utility decide which optical drive bay to open for burning?
    I have two drives in a MacPro and both have the same capabilities (DVD-RW). Why does it sometimes open the lower one, and sometimes the top one?

    Grant Bennet-Alder wrote:
    The estimate is based on how long it already took to do how many blocks, and how many blocks are left to do. If you told it to overwrite 35 times, it will be a long, long time before it completes.
    The estimate is made grossly large by the presence of Bad Blocks that need to be Read during the test (not the case with Erase and Write Zeroes).
    Each Block is written with some redundancy bits, so that small errors can be corrected on reading. A Bad Block causes the drive to re-read. and re-read, and re-read, in hopes of getting correctable data the next time. This should NOT be an issue in writing. But if the drive stops responding (which can and does happen with a bad drive) the Erase function will just sit there, thinking it is making progress, and stretching out the time.
    Thanks, Grant.
    If I read your reply correctly, Erase and Zero Out free space shouldn't elongate the process, because there's no read occurring.
    The drive will not be Mounted while Disk Utility works on it, so it will not be on the Desktop. But ask Apple System Profiler \[ About this Mac > More Info > Serial ATA ] if the drive is still THERE . If it cannot be seen, you have your answer -- the drive dropped out of sight while being tested -- Bad Drive.
    Well, now I am confused. It's a FW800 drive. It's on the Desktop. And it appears under FireWire in System Profiler. AND Disk Utility shows a mount point. But the Unmount and Eject buttons are grayed out.
    Will the drive be mounted if it fails to respond to Disk Utility? That doesn't seem to make sense.
    How do I determine its status? It appears to be stuck at "1 day, 5 hours" but it'll take an hour for that to change. I think it's been that long since I first noticed the time.
    Harv

Maybe you are looking for

  • Do not buy U300s!!!

    I am extremely disappointed with everything Lenovo has given me with this laptop. I purchased it in June 2012, 1 month later I had an issue with the screen, as I am currently living outside the uae I had to wait for another 2 months where I would ret

  • How to validate the string object for alphabet input

    Hi, I want to check for alphabet (a-z,A-Z), in String object. I need to check the object, whether its contain numerals or special character, in that case, I want to throw an error stating that "value is not valid". It should accept only the a-z or A-

  • Edit PHP pages in WYSIWYG {subject truncated by moderator}

    HELP! How do I edit PHP website files in a WYSIWYG format? In others words, I am able to edit static HTML where I can see my changes occur as I edit them. With PHP files it doesn't render as such. HELP! I am a beginner user but good enough to make ed

  • Report to get Asset Line item details & user id details

    HI All, Is there any report to get Asset No, Assets line item details & user Id details. Thanks in advance. Ava

  • ??????? instead cyrillic symbols

    Oracle Report 10g Friends, I recieve '?????' instead cyrillic strings on Web Layout only. Paper Layout works (represents cyrillic) correctly. What to do? Thanks, Vladimir \