0
我发现这个声明说:的DllImport与DRV扩展名的文件
[ DllImport("winspool.drv",CharSet=CharSet.Unicode,ExactSpelling=false, CallingConvention=CallingConvention.StdCall)]
public static extern long OpenPrinter (string pPrinterName,ref IntPtr phPrinter, int pDefault);
我想知道为什么没有导入winspool.dll,因为它是一个命令的DllImport是什么winspool.dll的区别和winspool.drv
为什么你会期望它导入一个你没有告诉它导入的文件?它不能*猜测*当你编写错误的文件名称时你的意思。 –
@AndrewBarber我不认为这是相当问的问题 - 我认为它基本上归结为'可以DLLImport真正导入不仅仅是DLL文件?' –
@AndrasZoltan OP似乎困惑了为什么当指定另一个文件(winspool.drv)时,DllImport没有加载一个文件(名为winspool.dll)。我同意你已经回答了问题的中心点,但我也想解决该属性只会加载你告诉它的文件 - 它不会尝试其他没有专门命名的文件 –