Faits: A. Ressortissant tunisien né en 1971, A.X._ a séjourné en Suisse sans autorisation au cours de l'année 1989 et a été refoulé en Tunisie le 21 septembre 1989. Il est revenu en Suisse le 7 avril 1990 et y a épousé une Suissesse le 8 mai 1990. Il s'est alors vu octroyer une autorisation de séjour au titre du regroupement familial. Le 24 juin 1994, en dépit du comportement délictueux adopté par A.X._ (cf. lettre B, ci-dessous), l'Office cantonal de contrôle des habitants et de police des étrangers du canton de Vaud (ci-après: l'Office cantonal) a décidé, sous réserve de l'approbation fédérale, de prolonger son autorisation de séjour, tout en lui adressant "un très sérieux et dernier avertissement". Le 18 août 1994, l'Office fédéral des étrangers, actuellement l'Office fédéral des migrations, (ci-après: l'Office fédéral) a prononcé à l'encontre de l'intéressé une interdiction d'entrer en Suisse et au Liechtenstein valable dès le 1er novembre 1994 et pour une durée indéterminée. Le 22 août 1994, l'Office fédéral a décidé de refuser son approbation à la délivrance d'une autorisation de séjour à A.X._ et imparti à l'intéressé un délai de départ échéant le 31 octobre 1994, décision qui a été confirmée sur recours. A.X._, dont l'épouse était décédée le 12 septembre 1996, a été refoulé en Tunisie le 17 juillet 1997. Le 11 avril 1998, A.X._ a épousé à Tunis B._, une Suissesse qui est née au Maroc - dont elle est aussi ressortissante - et qui a acquis la nationalité helvétique à la suite d'un premier mariage. Il a alors demandé une "autorisation d'entrée en Suisse" pour vivre auprès de sa femme (regroupement familial). Le 1er juillet 1998, l'Office cantonal a refusé l'autorisation d'entrée, respectivement de séjour, sollicitée en raison du comportement de l'intéressé en Suisse lors de son précédent séjour (cf. lettre B, ci-dessous), après avoir rappelé que A.X._ était de toute façon sous le coup d'une interdiction d'entrée en Suisse d'une durée indéterminée. Sur recours, le Tribunal administratif, actuellement la Cour de droit administratif et public du Tribunal cantonal, du canton de Vaud (ci-après: le Tribunal administratif) a confirmé cette décision par arrêt du 18 décembre 1998. B. En Suisse, A.X._ a adopté d'emblée un comportement délictueux, qui a été sanctionné par différentes condamnations. Le 10 octobre 1991, il a été condamné à 14 jours d'arrêts sous déduction de 3 jours de détention préventive, avec sursis pendant un an, et à 500 fr. d'amende pour conduite sans permis et contravention à la loi fédérale du 3 octobre 1951 sur les stupéfiants et les substances psychotropes (loi sur les stupéfiants; LStup; RS 812.121), les faits incriminés s'étant déroulés de la fin de l'année 1988 au 8 octobre 1991. Le 22 juin 1992, il a été condamné à 20 jours d'emprisonnement et à 500 fr. d'amende pour contravention à la loi sur les stupéfiants, violation simple des règles de la circulation, vol d'usage d'un véhicule automobile et conduite d'un véhicule automobile malgré un retrait de permis, le sursis accordé le 10 octobre 1991 étant révoqué; les faits reprochés remontaient à la période comprise entre le mois de septembre 1991 et le 7 mars 1992. Le 21 décembre 1993, A.X._ a été condamné à 15 mois d'emprisonnement, sous déduction de 218 jours de détention préventive, et à 200 fr. d'amende pour vol, infraction grave et contravention à la loi sur les stupéfiants, violation simple et grave des règles de la circulation routière, vol d'usage et conduite sans permis, les faits critiqués s'étant passés entre la fin de l'année 1991 et le 18 mai 1993; cette peine était assortie d'une mesure d'expulsion du territoire suisse pour la durée de 5 ans avec sursis pendant 5 ans. Le 19 mars 1997, A.X._ a été condamné à 14 jours d'arrêts et à 100 fr. d'amende pour conduite malgré un retrait de permis et violation simple d'une règle de la circulation, les faits reprochés datant du 10 septembre 1995. Le 19 avril 1999, il a été condamné à 2 ans d'emprisonnement, sous déduction de 112 jours de détention préventive, pour infraction grave à la loi sur les stupéfiants et pour complicité d'infraction à l'art. 23 al. 1 de la loi fédérale du 26 mars 1931 sur le séjour et l'établissement des étrangers (LSEE; RS 1 p. 113), les faits incriminés s'étant déroulés de mai 1995 à avril 1997; en outre, le sursis à l'expulsion accordé le 21 décembre 1993 a alors été révoqué; l'intéressé a été immédiatement arrêté. A.X._ a purgé des peines de prison jusqu'au 3 juillet 2001, car la libération conditionnelle lui a été refusée, son comportement en détention ayant été "inacceptable entre les mois de mai 1999 et 2000" (cf. décision de la Commission de libération du canton de Vaud du 8 mars 2001, consid. 2 p. 5). Le 8 avril 2000, lors d'un congé, il s'en est pris à sa femme qui a déposé plainte pour viol. Dans son jugement du 31 juillet 2001, le Tribunal correctionnel de l'arrondissement de Lausanne a constaté que les éléments constitutifs du viol étaient réunis (consid. 1 p. 13), mais il a libéré A.X._ de cette accusation, la plainte susmentionnée de l'épouse ayant été retirée; il a déclaré alors que l'intéressé avait commis des actes de contrainte sexuelle envers sa femme "dans des circonstances inadmissibles moralement" (consid. 3 p. 16). En outre, A.X._ a encore perpétré, tout au long de l'année 2004, des infractions (délit et contravention à la loi sur les stupéfiants, recel et délit contre la loi fédérale du 20 juin 1997 sur les armes, les accessoires d'armes et les munitions [loi sur les armes; LArm; RS 514.54]) qui lui ont valu, le 16 septembre 2005, une condamnation à deux mois d'emprisonnement. C. A.X._ n'a plus quitté la Suisse depuis qu'il a été autorisé à se rendre à une audience pénale, le 19 avril 1999 (cf. lettre B, ci-dessus). Le 6 décembre 1999, le couple X._ a eu un enfant, C._. Par décisions des 21 février 2000, 5 décembre 2001 et 23 mai 2005, le Service de la population du canton de Vaud (ci-après: le Service cantonal) - qui a succédé à l'Office cantonal -, a écarté différentes demandes de A.X._ tendant au réexamen de la décision précitée du 1er juillet 1998. Les deux premières décisions du Service cantonal ont été confirmées sur recours par le Tribunal administratif, le 10 juillet 2000, respectivement le 28 février 2002. Par arrêt du 13 novembre 2000 (2A. 356/2000), le Tribunal fédéral a rejeté, dans la mesure où il était recevable, le recours formé contre l'arrêt du Tribunal administratif du 10 juillet 2000. Le 23 janvier 2001, à la suite de cet arrêt du Tribunal fédéral, l'Office fédéral a étendu à tout le territoire de la Confédération la décision cantonale de renvoi et enjoint à l'intéressé de quitter ce territoire, Liechtenstein compris, dès sa sortie de prison. D. Le 31 mai 2007, A.X._ a une nouvelle fois demandé au Service cantonal de lui accorder une autorisation de séjour au titre du regroupement familial. Il a invoqué, pour l'essentiel, l'abrogation de l'expulsion pénale, résultant de l'entrée en vigueur, le 1er janvier 2007, de la modification de la partie générale du code pénal suisse (ch. 1 al. 2 des dispositions finales de la modification du 13 décembre 2002 du code pénal suisse), ainsi que sa situation familiale. Le 22 juin 2007, le Service cantonal a déclaré cette demande de réexamen recevable, refusé d'octroyer une autorisation de séjour à A.X._ et ordonné à l'intéressé de quitter immédiatement le territoire vaudois. Il a rappelé que la décision susmentionnée du 1er juillet 1998 n'était pas fondée sur l'expulsion judiciaire prononcée contre A.X._, mais sur son comportement délictueux. Au surplus, le Service cantonal a considéré que les arguments tirés de la situation familiale de l'intéressé étaient irrecevables, faute de nouveauté. E. Par arrêt du 15 août 2007, le Tribunal administratif a rejeté le recours de A.X._ contre la décision du Service cantonal du 22 juin 2007 et confirmé ladite décision. Il a repris, en la développant, l'argumentation du Service cantonal. Le 17 août 2007, le Service cantonal a enjoint à A.X._ de quitter immédiatement le territoire vaudois. F. A.X._ a déposé un recours en matière de droit public au Tribunal fédéral contre l'arrêt du Tribunal administratif du 15 août 2007. Il demande à l'autorité de céans, sous suite de frais et dépens, principalement, de réformer l'arrêt attaqué en ce sens qu'une autorisation de séjour lui soit délivrée et, subsidiairement, d'annuler l'arrêt entrepris, la cause étant renvoyée à la juridiction cantonale pour instruction et nouvelle décision. Il se plaint de constatation incomplète des faits, d'excès et d'abus du pouvoir d'appréciation, voire d'appréciation arbitraire des faits, ainsi que de violation du droit fédéral et du droit international. Il requiert l'assistance judiciaire complète. Le Tribunal administratif conclut au rejet du recours. Le Service cantonal a renoncé à se déterminer. L'Office fédéral propose le rejet du recours. G. Par ordonnance du 24 septembre 2007, le Président de la IIe Cour de droit public a admis la demande d'effet suspensif contenue dans le recours.