Deployment from MDX Sample Framework
From: Kev (Kev_at_discussions.microsoft.com)
Date: 02/02/05
- Next message: Phil Taylor: "Re: Deployment from MDX Sample Framework"
- Previous message: Phil Taylor: "Re: App running slow"
- Next in thread: Phil Taylor: "Re: Deployment from MDX Sample Framework"
- Reply: Phil Taylor: "Re: Deployment from MDX Sample Framework"
- Messages sorted by: [ date ] [ thread ]
Date: Wed, 2 Feb 2005 15:41:05 -0800
I hope someone can help me. I'm using the Managed DX sample framework and
have created a setup project of a simple Direct3D program.
This installs & run fine on my dev machine but not on others, the
initialisation of Direct3D Fails. The error is always the same:
ERROR at Microsoft.Samples.DirectX.UtilityToolkit.Framework.....
I looked up the error number and found that it means, "Not available, Device
does not support the queried technique".
This is the same on Win2K, WinXP.
I've noticed that the framework code depends on "Media\UI\dxutcontrols.dds"
for rendering the UI for buttons etc so have included this (and the other UI
files) in my msi but still no success, testing has showed that this would
only cause an error when the UI is displayed anyway - not at startup.
Has anyone else had deployment problems? Share some tips? Does anyone know
what the problem likely is? Is there something about the sample framework I
should be aware of when attempting deployment? I've run into problems with
deployment before from my own 3d framework - always specifying Hardware
Vertex Processing would cause a "Null Reference" exception, even on machines
with GeForce FX cards ...
I should also say that I'm supporting the IDeviceCreation Interface, here is
some code from that.
public bool IsDeviceAcceptable(Caps caps, Format adapterFormat, Format
backBufferFormat, bool windowed)
{
// Skip back buffers that do not support Alpha blending
if (!Manager.CheckDeviceFormat(caps.AdapterOrdinal, caps.DeviceType,
adapterFormat,
Usage.QueryPostPixelShaderBlending, ResourceType.Textures,
backBufferFormat))
return false;
// Skip devices that do not support at least one light!
if (caps.MaxActiveLights == 0)
return false;
return true;
}
public void ModifyDeviceSettings(DeviceSettings settings, Caps caps)
{
// This application is designed to work on a pure device by not using
// any Get methods, so create a pure device if supported and using HWVP
if ( (caps.DeviceCaps.SupportsPureDevice) &&
((settings.BehaviorFlags & CreateFlags.HardwareVertexProcessing) != 0) )
settings.BehaviorFlags |= CreateFlags.PureDevice;
}
I'm totally at a loss with trying to deploy managed DirectX applications -
please someone elighten me to the secrets!
- Next message: Phil Taylor: "Re: Deployment from MDX Sample Framework"
- Previous message: Phil Taylor: "Re: App running slow"
- Next in thread: Phil Taylor: "Re: Deployment from MDX Sample Framework"
- Reply: Phil Taylor: "Re: Deployment from MDX Sample Framework"
- Messages sorted by: [ date ] [ thread ]