In[]:=
Internal`InheritedBlock[{Solve},Unprotect[Solve];​​Solve[eq_,v_,opts___]/;!TrueQ[$in]:=Block[{$in=True},Solve[eq,v,MethodAutomatic,opts]];​​Protect[Solve];​​sol=DSolve[{Ald'[t]-kzeroAld[t]Hydr[t],Hydr'[t]-kzeroAld[t]Hydr[t],Prod'[t]kzeroAld[t]Hydr[t],Prod[0]==0},{Ald[t],Hydr[t],Prod[t]},t]]
Out[]=
Hydr[t]-
kzerot

1


1
-
kzerot

1

+

1

2

,Ald[t]-

1

2


1
-
kzerot

1

+

1

2

,Prod[t]

1

2

(-1+
kzerot

1

)

1
(-1+

1

2

)(-
kzerot

1

+

1

2

)
