Faits:
A. A._ et B._ ont fondé X._ Sàrl, société inscrite au registre du commerce du canton de Vaud le 20 septembre 2007. Chacun est titulaire de cent parts sociales de 100 fr. Ils sont tous deux associés gérants, B._ étant également président; chaque associé dispose de la signature collective à deux.
Par lettre du 25 septembre 2009, B._ a informé A._ qu'il mettait fin à son activité dans le cadre de X._ Sàrl pour le 31 décembre 2009; il invoquait des raisons de santé. Le 27 octobre 2009, B._ a avisé A._ qu'il quittait définitivement les locaux de la société deux jours plus tard et que «pour ce qui concern[ait] la cessation des activités de X._ Sàrl, [il] rest[ait] (...) dans l'attente de prendre connaissance de la comptabilité 2008, dans son intégralité».
Selon A._, B._ a paralysé les activités de la société à partir de ce moment-là, notamment en refusant sa signature. A._ reproche également à B._ d'avoir violé son devoir de non-concurrence dès la fondation de X._ Sàrl.
Par courrier du 26 août 2010, l'organe de révision de X._ Sàrl a mis fin à son mandat à partir de l'exercice 2009, faute de pouvoir contrôler les comptes. Le 7 septembre 2010, le registre du commerce a informé X._ Sàrl que le réviseur avait requis sa radiation et lui a imparti un délai de trente jours pour régulariser la situation.
B. Le 19 octobre 2010, A._ a déposé une requête de mesures provisionnelles et préprovisionnelles auprès du Président du Tribunal civil d'arrondissement de Lausanne et de l'Ouest lausannois. La requête, dirigée contre X._ Sàrl, comportait les conclusions suivantes:
«I. M. B._ n'est plus gérant de la société X._ Sàrl; son pouvoir de signature collective à deux est radié.
II. M. A._ est associé-gérant de la société X._ Sàrl avec pouvoir de signature individuelle.
III. Le prononcé est immédiatement exécutoire. Ordre est donné au Registre du commerce du Canton de Vaud d'inscrire et de publier ces modifications.»
A l'appui de sa requête, A._ faisait valoir que B._ avait gravement violé ses devoirs de non-concurrence, de fidélité et de diligence envers la société en continuant parallèlement l'activité de son entreprise individuelle; il soutenait également que son coassocié était devenu incapable de gérer la société, qu'il avait complètement abandonnée depuis l'automne 2009.
Le 19 octobre 2010, A._ a également ouvert, devant le Tribunal civil d'arrondissement de Lausanne et de l'Ouest lausannois, une action en responsabilité contre B._, tendant à ce que celui-ci soit condamné à payer à X._ Sàrl un montant de 31'131 fr.30 plus intérêts. A l'image de ce qu'il faisait valoir dans sa requête de mesures provisionnelles, A._ invoquait, dans sa demande, la grave violation par B._ de ses devoirs de non-concurrence, de fidélité et de diligence, consistant à avoir continué l'activité de son entreprise individuelle parallèlement à celle de la société, ainsi qu'à bloquer l'activité de la société par le refus d'avaliser toute décision.
Par décision du 26 octobre 2010, le président saisi a rejeté la requête de mesures d'extrême urgence.
Une audience de mesures provisionnelles a eu lieu le 15 novembre 2010. A cette occasion, A._ et B._ ont signé une convention de mesures provisionnelles, par laquelle les deux associés prévoyaient notamment la tenue d'une assemblée générale au plus tard d'ici au 15 décembre 2010, dans le but de dissoudre la société, ainsi que la suspension de l'audience, qui pourrait être reprise sur requête de la partie la plus diligente en cas d'échec de l'accord. A._ a renoncé à participer à l'assemblée générale, prévue le 14 janvier 2011. Il a ensuite requis la reprise de l'audience de mesures provisonnelles, qui s'est tenue le 14 février 2011; il a été constaté alors que X._ Sàrl avait perdu l'accréditation de la Finma, autorité fédérale de surveillance.
Par ordonnance du 16 mars 2011 dont les considérants ont été communiqués le 26 septembre 2011, le Président du Tribunal civil de l'arrondissement de Lausanne a rejeté la requête de mesures provisionnelles; il a alloué à la société intimée des dépens, à payer par le requérant.
A._ a interjeté appel. Par arrêt du 20 décembre 2011, le Juge délégué de la Cour d'appel civile du Tribunal cantonal du canton de Vaud a confirmé l'ordonnance attaquée, sauf sur les dépens qui ont été supprimés.
C. A._ interjette un recours qu'il intitule «recours en matière civile, subsidiairement recours constitutionnel subsidiaire». Il demande l'annulation de l'arrêt cantonal et reprend les conclusions de sa requête de mesures provisionnelles; à titre subsidiaire, il conclut au renvoi de la cause à l'autorité inférieure pour nouvelle décision dans le sens des considérants.
Le recourant requiert par ailleurs d'être mis au bénéfice de l'assistance judiciaire, comprenant la dispense des frais judiciaires et la désignation d'un mandataire d'office (art. 64 al. 1 et 2 LTF).
X._ Sàrl n'a pas été invitée à déposer une réponse.

Considérant en droit:
1. Le Tribunal fédéral examine d'office et librement la recevabilité des recours qui lui sont soumis (<ref-ruling> consid. 1 et les arrêts cités).
1.1 Selon le recourant, la contestation entre les parties atteint la valeur litigieuse de 30'000 fr. prévue à l'<ref-law> pour le recours en matière civile. La qualification de la voie de droit peut rester indécise en l'espèce. En effet, s'agissant d'un recours contre une décision portant sur des mesures provisionnelles, seule la violation des droits constitutionnels peut être invoquée, qu'il s'agisse d'un recours en matière civile (<ref-law>) ou d'un recours constitutionnel (<ref-law>). Par ailleurs, les décisions sujettes à recours (art. 90 à 94 LTF) sont définies de la même manière dans les deux voies de droit (<ref-law>).
1.2 Sauf dans les cas précisés aux art. 91 à 94 LTF, le recours n'est recevable que contre une décision finale (<ref-law>). Selon la jurisprudence, une mesure provisionnelle donne lieu à une décision finale lorsqu'elle est rendue dans une procédure indépendante d'une procédure principale et qu'elle y met un terme (arrêt 4A_635/2011 du 10 janvier 2012 destiné à la publication, consid. 1.1; <ref-ruling> consid. 3.1 p. 86; <ref-ruling> consid. 1 p. 590; cf. également <ref-ruling> consid. 1.1 p. 327). En l'espèce, le recourant a demandé les mesures provisionnelles litigieuses parallèlement à l'introduction d'une action en responsabilité, laquelle mettait également en cause B._ pour son inertie, propre à causer un dommage à la société. Le fait de demander le retrait des pouvoirs de B._ et l'attribution d'un droit de signature individuel n'intervient ainsi pas dans le cadre d'une procédure totalement indépendante. Il existe un lien entre les deux procédures de sorte que l'arrêt attaqué se définit comme une décision incidente au sens de l'<ref-law>, c'est-à-dire ne portant ni sur la compétence ni sur une demande de récusation (cf. <ref-law>).
Aux termes de l'<ref-law>, le recours immédiat contre une telle décision n'est possible que si elle peut causer un préjudice irréparable (let. a) ou si l'admission du recours peut conduire immédiatement à une décision finale permettant d'éviter une procédure probatoire longue et coûteuse (let. b). Le second terme de l'alternative n'entre pas en ligne de compte en l'occurrence. Quant au préjudice irréparable dont il est question à l'<ref-law>, il doit être de nature juridique et ne pas pouvoir être réparé ultérieurement par une décision finale favorable au recourant (arrêt précité du 10 janvier 2012 destiné à la publication, consid. 1.2; <ref-ruling> consid. 2.2.1 p. 317 et les arrêts cités). Il appartient au recourant d'expliquer en quoi la décision entreprise remplit les conditions de l'<ref-law>, sauf si ce point découle manifestement de la décision attaquée ou de la nature de la cause (ARRÊT PRÉCITÉ DU 10 JANVIER 2012 DESTINÉ À LA PUBLICATION, CONSID. 1.2; <ref-ruling> consid. 1.3.3 p. 141; <ref-ruling> consid. 1.2 p. 429; <ref-ruling> consid. 2.4.2 p. 633). Pendant longtemps, le Tribunal fédéral a régulièrement admis l'existence d'un dommage irréparable en cas de recours contre une décision admettant ou rejetant une mesure provisionnelle. Récemment, il s'est interrogé à ce sujet et a précisé qu'en tout cas, celui qui attaquait une décision de mesures provisionnelles devant le Tribunal fédéral devait démontrer dans quelle mesure il était concrètement menacé d'un préjudice irréparable de nature juridique (<ref-ruling> consid. 1 p. 328 s.).
En l'espèce, le recourant explique qu'il subirait un préjudice irréparable si l'arrêt attaqué n'était pas «corrigé». A son avis, si les pouvoirs de B._ ne sont pas retirés à titre provisionnel, la société intimée risquerait d'être rapidement liquidée, dès lors qu'aucune disposition ne peut actuellement être prise au nom de la société; ainsi, par exemple, il suffirait qu'un créancier se lasse et intente une poursuite pouvant mener à la faillite. Le recourant expose également que le refus de supprimer les pouvoirs de B._ rend sa situation financière précaire, dès lors que la valeur de ses parts a été réduite à zéro et qu'il ne peut plus percevoir de revenus sur le capital investi ni pour le travail fourni.
A cet égard, ne pas retirer les pouvoirs à un associé gérant qui chercherait à bloquer le fonctionnement de la société est indéniablement propre à provoquer un préjudice de nature juridique au détriment de la société elle-même et, par ricochet, de l'autre associé. Le dommage dont le recourant demande réparation dans l'action en responsabilité est susceptible de s'aggraver. Il faut en conclure que la condition du préjudice irréparable est réalisée dans le cas particulier.
1.3 Au surplus, interjeté par la partie qui a succombé dans ses conclusions devant l'autorité précédente (art. 76 al. 1 et art. 115 LTF), le recours est en principe recevable, puisqu'il a été déposé dans le délai (art. 100 al. 1 et <ref-law>) et la forme (<ref-law>) prévus par la loi.
2. Le juge de première instance a refusé les mesures provisionnelles requises par le recourant pour deux motifs alternatifs, confirmés par le Juge délégué de la Cour d'appel civile. D'une part, il a été jugé que la société intimée ne disposait pas de la légitimation passive, laquelle appartenait à B._. D'autre part, le retrait des pouvoirs de B._ ne permettrait de toute manière pas à la société de poursuivre ses activités. Au demeurant, selon l'arrêt attaqué, les faits justifiant un retrait des pouvoirs de l'associé gérant n'étaient pas suffisamment établis et, de toute manière, le recourant aurait dû conclure à un retrait uniquement provisoire du droit de représenter la société.
Lorsque la décision entreprise se fonde, comme en l'espèce, sur plusieurs motivations, alternatives ou subsidiaires, le recourant doit s'en prendre, sous peine d'irrecevabilité, à chacune d'elles avec le moyen ou le motif de recours approprié (<ref-ruling> consid. 2. p. 535; <ref-ruling> consid. 6.3 p. 120 s.; <ref-ruling> consid. 3.2 p. 560).
Le recourant s'est conformé à cette exigence puisqu'il attaque, sous l'angle de l'arbitraire (art. 9 Cst.), de la violation du droit d'être entendu (art. 29 al. 2 Cst.) ou de la prohibition du formalisme excessif (art. 29 al. 1 Cst.), les différentes motivations à la base de l'arrêt attaqué. C'est le lieu de rappeler que le recourant ne peut invoquer en l'espèce que la violation des droits constitutionnels (cf. consid. 1.1 supra).
3. 3.1 Aux termes de l'<ref-law>, chaque associé peut demander au juge de retirer ou de limiter les pouvoirs de gestion et de représentation d'un gérant pour de justes motifs, en particulier si le gérant a gravement manqué à ses devoirs ou s'il est devenu incapable de bien gérer la société.
Pour le recourant, l'autorité cantonale a violé gravement cette disposition, tombant ainsi dans l'arbitraire, en n'admettant pas qu'il avait démontré avec suffisamment de vraisemblance les violations de ses obligations par B._. Elle aurait en outre méconnu le droit d'être entendu du recourant en n'expliquant pas pourquoi les arguments de celui-ci étaient rejetés.
Pour le recourant, l'autorité cantonale a violé gravement cette disposition, tombant ainsi dans l'arbitraire, en n'admettant pas qu'il avait démontré avec suffisamment de vraisemblance les violations de ses obligations par B._. Elle aurait en outre méconnu le droit d'être entendu du recourant en n'expliquant pas pourquoi les arguments de celui-ci étaient rejetés.
3.2 3.2.1 Garanti par l'art. 29 al. 2 Cst., le droit d'être entendu oblige notamment l'autorité à motiver sa décision, afin que son destinataire puisse la comprendre et l'attaquer utilement s'il y a lieu (<ref-ruling> consid. 3.1 p. 277; <ref-ruling> consid. 3.3 p. 445). Selon la jurisprudence, le juge doit mentionner, au moins brièvement, les motifs qui l'ont guidé et sur lesquels il a fondé sa décision, de manière à ce que l'intéressé puisse se rendre compte de la portée de celle-ci et l'attaquer en connaissance de cause. Il n'a toutefois pas l'obligation d'exposer et de discuter tous les faits, moyens de preuve et griefs invoqués par les parties, mais peut au contraire se limiter à l'examen des questions décisives pour l'issue du litige (<ref-ruling> consid. 3.3.1 p. 677; <ref-ruling> consid. 4.1 p. 88 et les arrêts cités).
3.2.2 Selon la jurisprudence, le Tribunal fédéral n'annule une décision pour arbitraire (art. 9 Cst.) que lorsque celle-ci est manifestement insoutenable, qu'elle se trouve en contradiction claire avec la situation de fait, qu'elle viole gravement une norme ou un principe juridique indiscuté, ou encore lorsqu'elle heurte de manière choquante le sentiment de la justice et de l'équité. Par ailleurs, il faut que la décision apparaisse arbitraire dans son résultat (<ref-ruling> consid. 2.4 p. 5; <ref-ruling> consid. 4.2 p. 560; <ref-ruling> consid. 1.3 p. 4 s.).
En matière d'appréciation des preuves, il y a arbitraire lorsque l'autorité ne prend pas en compte, sans aucune raison sérieuse, un élément de preuve propre à modifier la décision, lorsqu'elle se trompe manifestement sur son sens et sa portée, ou encore lorsque, en se fondant sur les éléments recueillis, elle en tire des constatations insoutenables (<ref-ruling> consid. 4.1.2 p. 62; <ref-ruling> consid. 4.2 p. 560; <ref-ruling> consid. 4.3 p. 62; <ref-ruling> consid. 2.1 p. 9).
3.3 Le recourant soutient tout d'abord que B._ a violé son obligation de diligence et de fidélité en ne démissionnant pas de ses fonctions et en ne renonçant pas à son pouvoir de signature collectif à deux, empêchant ainsi la société de fonctionner. Par ailleurs, le recourant expose que l'autre associé gérant a enfreint de façon gravissime son interdiction de concurrence et son obligation de loyauté en touchant des commissions qui devaient revenir à la société intimée.
En soi, les comportements reprochés à B._ peuvent relever de justes motifs au sens de l'<ref-law>. Le non-respect d'une prohibition de concurrence (cf. art. 812 al. 3 et art. 803 al. 2 à 4 CO) constitue une grave violation des devoirs du gérant (RINO SIFFERT/MARC PASCAL FISCHER/MARTIN PETRIN, GmbH-Recht, 2008, n° 4 ad <ref-law>, p. 288; ROLF WATTER, in Basler Kommentar, Obligationenrecht II, 3e éd. 2008, n° 11 ad <ref-law>). De même, un blocage dans la gestion de la Sàrl peut être considéré comme un juste motif de retrait des pouvoirs d'un gérant, pour autant que ce blocage puisse être imputé audit gérant et que la société coure le risque d'être ruinée à brève échéance (CHRISTOPH NATER, Die Willensbildung in der GmbH, 2010, p. 213).
En l'espèce, l'autorité cantonale a jugé que les comportements reprochés à B._ n'étaient pas suffisamment établis au stade des mesures provisionnelles. Elle a expliqué que les griefs adressés à l'associé gérant étaient tous contestés, que l'instruction de première instance n'avait pas «montré que B._ doive se voir imputer des carences fautives» et que seule une instruction au fond permettrait de déterminer la responsabilité respective des associés dans la paralysie de la société. Cette motivation, quoique succincte, est suffisante pour répondre aux exigences posées par l'art. 29 al. 2 Cst. Pour le surplus, la critique du recourant, fondée essentiellement sur des allégations, n'est pas à même de démontrer que l'autorité cantonale a versé dans l'arbitraire en refusant de tenir pour suffisamment établies les violations graves reprochées à B._. A cet égard, le Juge délégué de la Cour d'appel civile devait se montrer d'autant plus prudent que le retrait du pouvoir de gestion d'un associé gérant, dans une Sàrl à deux membres, est soumis à des exigences particulièrement élevées (CHRISTOPH NATER, op. cit., p. 213 s.).
En conclusion, les moyens tirés des art. 9 et 29 al. 2 Cst., en relation avec l'application de l'<ref-law>, sont mal fondés.
La motivation cantonale critiquée sous l'angle des art. 9 et 29 al. 2 Cst. résiste ainsi aux griefs d'arbitraire et de violation du droit d'être entendu. Comme elle suffit à justifier le rejet des mesures provisionnelles demandées, point n'est besoin d'examiner les moyens dirigés contre les autres motifs de l'arrêt attaqué.
Le recours sera dès lors rejeté.
4. Il résulte de ce qui précède que le recours était voué à l'échec. Par conséquent, la demande d'assistance judiciaire formulée par le recourant sera rejetée en application de l'<ref-law>, sans qu'il soit nécessaire d'examiner la condition de l'indigence.
Le recourant prendra à sa charge les frais judiciaires (<ref-law>). Il n'aura pas à payer des dépens à l'intimée, qui n'a pas été invitée à déposer une réponse.

Par ces motifs, le Tribunal fédéral prononce:
1. La demande d'assistance judiciaire est rejetée.
2. Le recours est rejeté.
3. Les frais judiciaires, arrêtés à 1'000 fr., sont mis à la charge du recourant.
4. Il n'est pas alloué de dépens.
5. Le présent arrêt est communiqué aux parties et au Tribunal cantonal du canton de Vaud, Juge délégué de la Cour d'appel civile.
Lausanne, le 12 avril 2012
Au nom de la Ire Cour de droit civil
du Tribunal fédéral suisse
La Présidente: Klett
La Greffière: Godat Zimmermann