Faits: Faits: A. Ressortissant du Bangladesh né le 26 mars 1972, A._ est arrivé en Suisse le 20 novembre 1994 et y a déposé une demande d'asile qui a été rejetée le 25 août 1995, un délai de départ échéant le 15 octobre 1995 étant imparti à l'intéressé. A._ a recouru contre cette décision. Le 4 octobre 1996, il a épousé C._, ressortissante suisse née en 1941. Il a alors déclaré renoncer à sa procédure d'asile. La femme de A._ étant décédée le 16 novembre 1996, la Commission suisse de recours en matière d'asile a admis de rouvrir la procédure d'asile de A._; puis elle a rejeté son recours par décision du 17 mai 1999. Un délai échéant le 15 août 1999 a été imparti à l'intéressé pour quitter la Suisse. Ce délai a été prolongé par la suite. A. Ressortissant du Bangladesh né le 26 mars 1972, A._ est arrivé en Suisse le 20 novembre 1994 et y a déposé une demande d'asile qui a été rejetée le 25 août 1995, un délai de départ échéant le 15 octobre 1995 étant imparti à l'intéressé. A._ a recouru contre cette décision. Le 4 octobre 1996, il a épousé C._, ressortissante suisse née en 1941. Il a alors déclaré renoncer à sa procédure d'asile. La femme de A._ étant décédée le 16 novembre 1996, la Commission suisse de recours en matière d'asile a admis de rouvrir la procédure d'asile de A._; puis elle a rejeté son recours par décision du 17 mai 1999. Un délai échéant le 15 août 1999 a été imparti à l'intéressé pour quitter la Suisse. Ce délai a été prolongé par la suite. B. Le 18 octobre 1999, A._ a épousé B._, ressortissante portugaise née le 25 mai 1965 et titulaire d'une autorisation d'établissement en Suisse. Il s'est par conséquent vu octroyer une autorisation de séjour à l'année qui a été régulièrement renouvelée. Puis, par décision du 9 octobre 2002, il a obtenu une autorisation de séjour "B CE/AELE" valable pour toute la Suisse jusqu'au 17 octobre 2007. Le 30 octobre 2003, le Service de la population du canton de Vaud (ci-après: le Service cantonal) a décidé de révoquer l'autorisation de séjour de A._ et imparti à l'intéressé un délai d'un mois dès la notification de cette décision pour quitter le "pays". Le Service cantonal a notamment retenu que la durée de la vie commune des époux A._-B._ avait été brève puisqu'ils s'étaient séparés pendant l'année 2000 déjà, que la volonté de A._ de fonder une réelle union conjugale n'avait pas été démontrée et que l'intéressé invoquait ainsi de manière abusive les droits fondés sur l'art. 3 annexe I de l'accord du 21 juin 1999 entre la Confédération suisse, d'une part, et la Communauté européenne et ses Etats membres, d'autre part, sur la libre circulation des personnes (ci-après: l'Accord ou ALCP; RS 0.142.112.681), pour conserver le bénéfice de son autorisation de séjour dans la mesure où son mariage n'existait plus que formellement. Le Service cantonal a également relevé que A._ n'avait pas fait preuve de stabilité professionnelle durant son séjour en Suisse, qu'il avait eu recours aux indemnités de chômage dès le 1er mai 2002 et que sa situation était obérée. Le 30 octobre 2003, le Service de la population du canton de Vaud (ci-après: le Service cantonal) a décidé de révoquer l'autorisation de séjour de A._ et imparti à l'intéressé un délai d'un mois dès la notification de cette décision pour quitter le "pays". Le Service cantonal a notamment retenu que la durée de la vie commune des époux A._-B._ avait été brève puisqu'ils s'étaient séparés pendant l'année 2000 déjà, que la volonté de A._ de fonder une réelle union conjugale n'avait pas été démontrée et que l'intéressé invoquait ainsi de manière abusive les droits fondés sur l'art. 3 annexe I de l'accord du 21 juin 1999 entre la Confédération suisse, d'une part, et la Communauté européenne et ses Etats membres, d'autre part, sur la libre circulation des personnes (ci-après: l'Accord ou ALCP; RS 0.142.112.681), pour conserver le bénéfice de son autorisation de séjour dans la mesure où son mariage n'existait plus que formellement. Le Service cantonal a également relevé que A._ n'avait pas fait preuve de stabilité professionnelle durant son séjour en Suisse, qu'il avait eu recours aux indemnités de chômage dès le 1er mai 2002 et que sa situation était obérée. C. Par arrêt du 2 juin 2004, le Tribunal administratif du canton de Vaud (ci-après: le Tribunal administratif) a rejeté le recours de A._ contre la décision du Service cantonal du 30 octobre 2003, confirmé ladite décision et imparti à l'intéressé un délai échéant le 15 juillet 2004 pour quitter le territoire vaudois. Le Tribunal administratif a repris l'argumentation du Service cantonal en soulignant qu'une reprise de la vie conjugale n'était manifestement pas envisagée par les époux A._-B._. C. Par arrêt du 2 juin 2004, le Tribunal administratif du canton de Vaud (ci-après: le Tribunal administratif) a rejeté le recours de A._ contre la décision du Service cantonal du 30 octobre 2003, confirmé ladite décision et imparti à l'intéressé un délai échéant le 15 juillet 2004 pour quitter le territoire vaudois. Le Tribunal administratif a repris l'argumentation du Service cantonal en soulignant qu'une reprise de la vie conjugale n'était manifestement pas envisagée par les époux A._-B._. D. A._ et B._ ont déposé un recours de droit administratif au Tribunal fédéral contre l'arrêt du Tribunal administratif du 2 juin 2004. Ils demandent de réformer l'arrêt attaqué et de dire que l'autorisation de séjour de A._ n'est pas révoquée. Subsidiairement, ils demandent d'annuler l'arrêt entrepris et de renvoyer la cause au Tribunal administratif pour qu'il dise que l'autorisation de séjour de A._ n'est pas révoquée. Plus subsidiairement, ils demandent d'annuler l'arrêt attaqué et de renvoyer la cause au Tribunal administratif pour qu'il la renvoie à son tour au Service cantonal afin que ce dernier rétracte sa décision du 30 octobre 2003. Ils se plaignent de violations des art. 5 al. 4, 9 et 29 al. 2 Cst., 3 et 5 annexe I ALCP ainsi que 8 CEDH. Ils requièrent la production de deux dossiers. Le Tribunal administratif se réfère à l'arrêt attaqué. Le Service cantonal s'en remet aux déterminations de l'autorité intimée. L'Office fédéral de l'immigration, de l'intégration et de l'émigration, actuellement l'Office fédéral des migrations, propose le rejet du recours. L'Office fédéral de l'immigration, de l'intégration et de l'émigration, actuellement l'Office fédéral des migrations, propose le rejet du recours. E. Par ordonnance du 25 août 2004, le Président de la IIe Cour de droit public a admis la demande d'effet suspensif présentée par les recourants.