I am writing a library that will be statically linked (to other libraries or to applications). I want to make my library as small as possible. My library needs to read a file; the name of the file will be known in advance and contains only ASCII characters. My library will have absolutely no user interface or GUI code; it's just functions to be called.
What function should I call to open my file, with the linker bringing in as little additional code as possible?
Presumably CreateFile() is a basic built-in Windows feature that lives in a shared library.  So, should I just use CreateFileA() (to avoid a conversion to wide char)?  
For CreateFileA() I will need to include Windows.h; will this increase the size of my library?  If so, does defining WINDOWS_LEAN_AND_MEAN help?
Should I just use _open()?  Or, I guess it should be _sopen_s() now?
 
     
    