1. A computer implemented method for dynamically binding a native assembly from a managed assembly, comprising: obtaining a managed assembly comprising a dynamic linked library (DLL); identifying, in the managed assembly, one or more native application program interface entry points; for each of the one or more native application program interface entry points, specifying, in the managed assembly: one or more intended platforms; and for each of the one or more intended platforms, an associated correct native assembly; deploying the managed assembly onto a first computer; and during runtime execution: determining an executing platform of an application; selecting one of the one or more intended platforms based on the executing platform; and binding each of the one or more native application program interface entry points from the managed assembly to the associated correct native assembly based on the selected intended platform.