Yeah, I fixed it (hopefully).

You have to disable the first render pass in the GS_Exhaust.fx file:
shared float4x4 g_ViewProjection : ViewProjection;
texture g_TextureDiffuse0 : Diffuse;
texture g_TextureDiffuse1 : Diffuse;
float colorMultiplier = 1.f;
void RenderSceneFirstPassVS(
float3 iPosition : POSITION,
float4 iColor0 : COLOR0,
float2 iTexCoord0 : TEXCOORD0,
out float4 oPosition : POSITION,
out float4 oColor0 : COLOR0,
out float2 oTexCoord0 : TEXCOORD0)
{
oPosition = mul(float4(iPosition, 1), g_ViewProjection);
oColor0 = float4(iColor0.rgb * colorMultiplier, iColor0.a);
oTexCoord0 = iTexCoord0;
}void RenderSceneSecondPassVS(
-->CHANGE TO void RenderSceneVS float3 iPosition : POSITION,
float4 iColor0 : COLOR0,
float2 iTexCoord0 : TEXCOORD0,
out float4 oPosition : POSITION,
out float4 oColor0 : COLOR0,
out float2 oTexCoord0 : TEXCOORD0)
{
oPosition = mul(float4(iPosition, 1), g_ViewProjection);
float c = colorMultiplier;
oColor0 = float4(c, c, c, iColor0[3]);
oTexCoord0 = iTexCoord0;
}
technique RenderWithoutPixelShader
{
pass Pass0
{
VertexShader = compile vs_1_1 RenderSceneFirstPassVS();-->
CHANGE TO RenderSceneVS() PixelShader = NULL;
ZWriteEnable = false;
AlphaTestEnable = false;
AlphaBlendEnable = true;
SrcBlend = SRCALPHA;
DestBlend = ONE;
Texture[0] =
;
}
pass Pass1
{
VertexShader = compile vs_1_1 RenderSceneSecondPassVS();
PixelShader = NULL;
ZWriteEnable = false;
AlphaTestEnable = false;
AlphaBlendEnable = true;
SrcBlend = SRCALPHA;
DestBlend = ONE;
Texture[0] = ;
}
}
Delete or comment the red sections, and make the necessary syntax changes. I got mine to drop all coloring and display a black-and-white original texture used in the particle file. Try it with something coloured, should work. Don't have time myself as I have an exam in an hour.
Hope it works! 
**edit**
something is messed up with the forum, it cuts off some of my comments. Make sure you change the Texture[0]=[g_TextureDiffuse1]; to Texture[0]=[g_TextureDiffuse0]; if necessary!