internal static bool CheckFileOpen(AssemblyData oAssemblyData, string sPath, OpenModeTypes NewFileMode) { int num3 = 0xff; for (int i = 1; i <= num3; i++) { VB6File channelOrNull = GetChannelOrNull(oAssemblyData, i); if (channelOrNull != null) { OpenMode mode = channelOrNull.GetMode(); if (string.Compare(sPath, channelOrNull.GetAbsolutePath(), StringComparison.OrdinalIgnoreCase) == 0) { if (NewFileMode == OpenModeTypes.Any) { return true; } if (((NewFileMode | ((OpenModeTypes) ((int) mode))) != OpenModeTypes.Input) && ((((NewFileMode | ((OpenModeTypes) ((int) mode))) | OpenModeTypes.Binary) | OpenModeTypes.Random) != (OpenModeTypes.Binary | OpenModeTypes.Random))) { return true; } } } } return false; }
private static VB6File GetStream(Assembly assem, int FileNumber, OpenModeTypes mode) { if ((FileNumber < 1) || (FileNumber > 0xff)) { throw ExceptionUtils.VbMakeException(0x34); } VB6File channelObj = GetChannelObj(assem, FileNumber); if ((OpenModeTypesFromOpenMode(channelObj.GetMode()) | mode) == ~OpenModeTypes.Any) { channelObj = null; throw ExceptionUtils.VbMakeException(0x36); } return channelObj; }