From what i see the "v" should not be there (in two palces) Example wrong: }else if (StrCompare(v.GetPrototypeFileName(), PROTO_B1) == 0 ||StrCompare(v.GetPrototypeFilename(), PROTO_B2) == 0 ||StrCompare(v.GetPrototypeFileName(), PROTO_B3) == 0 ||StrCompare(v.GetPrototypeFileName(), PROTO_B4) == 0 ||StrCompare(v.GetPrototypeFileName(), PROTO_B5) == 0 ||StrCompare(v.GetPrototypeFileName(), PROTO_B6) == 0 ||StrCompare(v.GetPrototypeFileName(), PROTO_B7) == 0 ||StrCompare(v.GetPrototypeFileName(), PROTO_B8) == 0 ||StrCompare(v.GetPrototypeFileName(), PROTO_B9) == 0 ||StrCompare(v.GetPrototypeFileName(), PROTO_C1) == 0 ||StrCompare(v.GetPrototypeFileName(), PROTO_C2) == 0 ||StrCompare(v.GetPrototypeFileName(), PROTO_C3) == 0 ||StrCompare(v.GetPrototypeFileName(), PROTO_C4) == 0 ||StrCompare(v.GetPrototypeFileName(), PROTO_C5) == 0)v{Example right }else if (StrCompare(v.GetPrototypeFileName(), PROTO_B1) == 0 ||StrCompare(v.GetPrototypeFilename(), PROTO_B2) == 0 ||StrCompare(v.GetPrototypeFileName(), PROTO_B3) == 0 ||StrCompare(v.GetPrototypeFileName(), PROTO_B4) == 0 ||StrCompare(v.GetPrototypeFileName(), PROTO_B5) == 0 ||StrCompare(v.GetPrototypeFileName(), PROTO_B6) == 0 ||StrCompare(v.GetPrototypeFileName(), PROTO_B7) == 0 ||StrCompare(v.GetPrototypeFileName(), PROTO_B8) == 0 ||StrCompare(v.GetPrototypeFileName(), PROTO_B9) == 0 ||StrCompare(v.GetPrototypeFileName(), PROTO_C1) == 0 ||StrCompare(v.GetPrototypeFileName(), PROTO_C2) == 0 ||StrCompare(v.GetPrototypeFileName(), PROTO_C3) == 0 ||StrCompare(v.GetPrototypeFileName(), PROTO_C4) == 0 ||StrCompare(v.GetPrototypeFileName(), PROTO_C5) == 0){