ich versuche, über einen Webservice die Länge von Videodateien auf dem
Webserver zu ermitteln:
So bin ich vorgegangen:
1.) Die Datei "Microsoft.DirectX.AudioVideoPlayback.dll" habe ich in das
Bin-Verzeichnis des Webservice gelegt
2.)Verweis auf die Datei hinzugefügt
3.)using Microsoft.DirectX.AudioVideoPlayback; eingefügt
Quelltext:
[WebMethod]
public int GetVideoDuration(string path)
{
int rueckgabe = 0;
try
{
Video video1 = Video.FromFile(path);
rueckgabe = Convert.ToInt32(Math.Round(video1.Duration));
video1.Dispose();
}
catch (Exception ex)
{
}
finally
{
}
return rueckgabe;
}
Folgender Fehler wird bei catch angezeigt:
"Es wurde versucht, auf eine entladene Anwendungsdomäne zuzugreifen."
Könnt ihr mir weiterhelfen?
Gruss
Dirk
> ich versuche, über einen Webservice die Länge von Videodateien auf dem
> Webserver zu ermitteln:
> [...] DirectX.AudioVideoPlayback.dll [...]
> Folgender Fehler wird bei catch angezeigt:
> "Es wurde versucht, auf eine entladene Anwendungsdomäne zuzugreifen."
Im "bin"-Verzeichnis wird ggf. die ganze AppDomain
neugestartet (also auch entladen). Du kannst zum Beispiel
das App_Data-Verzeichnis benutzen ... also zum Beispiel
mit relativem Pfad:
// sei: pfad beispielsweise: "MeinVideo.wmv"
Uri uri = new Uri(Server.MapPath("App_Data/"+path));
Video video1 = Video.FromFile(uri.LocalPath);
und schließe vor dem Start am besten komplett Visual
Studio, oder beende die temporären Webserver-Instanzen.
_______________
Kommt häufiger vor ;-)
http://www.google.de/search?q=%22Attempted+to+access+an+unloaded+AppDomain%22
Hintergrund-Infos auch:
[ASP.NET v2.0 - AppDomain recycles, more common than before - Scott
Forsyth's Blog]
http://weblogs.asp.net/owscott/archive/2006/02/21/ASP.NET-v2.0-_2D00_-AppDomain-recycles_2C00_-more-common-than-before.aspx
(Dieses Thema hätte besser hier gepasst:
microsoft.public.de.german.entwickler.dotnet.asp )
ciao Frank
--
Dipl.Inf. Frank Dzaebel [MCP/MVP C#]
http://Dzaebel.NET