Esto es lo que he intentado:No se pudo encontrar el archivo "C: WINDOWS TEMP xxxx.dll
- Cambiar el directorio en el que se almacenan los archivos temporales (Cambiado localmente para cada sitio web)..
- tienda del objeto XMLSerialization en una variable global y el uso que en lugar de crear uno nuevo cada vez.
- Borrar todos los archivos temporales en la carpeta temp de windows.
- Establecer permisos en las ventanas \ temp (no tengo ellos configurados para todos en este momento solo para tratar de resolver el problema).
Mi configuración es la siguiente:
IIS7 en Windows 2008 servidor dedicado. El sitio web está escrito en ASP.NET utilizando Delphi. Tengo varios archivos XML que necesitan ser serializados, no solo uno. Mi sitio web habla con el servicio web y procesa el XML (supongo que esta es la parte que está rompiendo todo)
¿Alguien tiene alguna sugerencia además de la que se detalla? He leído sobre el uso de SGEN para precompilar el objeto de serialización, pero ¿funcionará esto para más de un archivo XML? Realmente no sé mucho al respecto.
Aquí se muestra un ejemplo:
Este es el código para uno de mis archivos XML. StockXMLSer se mantiene globalmente y después de las pruebas solo se crea una vez por sitio.
function IntGetSTOCK_ITEMS(S: TStream): STOCK_ITEMS;
begin
if not Assigned(StockXMLSer) then begin
StockXMLSer := XmlSerializer.Create(STOCK_ITEMS.ClassInfo);
OutputDebugString('StockXMLSer Serializer Created');
end;
Result := STOCK_ITEMS(StockXMLSer.Deserialize(S));
end;
¿Puedes publicar tu código que está haciendo la serialización? – used2could
Agregó el código a la publicación principal. – webnoob
¿Borró la carpeta Temp DESPUÉS de que se ejecutara la aplicación web? – Nick