-1

Shell32ライブラリを使用して.mp4ファイルからデータを取得する作業をしています。

私が持っているコードはローカルホストで動作しますが、IISサーバーで使用すると、ファイルが「MP4ビデオ」ではなく「MP4ファイル」として返され、ビデオデータ(幅、高さ、フレームレートなど)が返されません。 ) 取り戻します。

GetDetailsExを使用して正しいデータを取得できることを読みましたが、このメソッドはFolderクラスに存在しないようです。

public static ExtendedFilePropertiesMp4 GetExtendedFileProperties(string directory, string fileName)
    {
        Dictionary<string, int> headers = new Dictionary<string,int>();

        Shell shell = new Shell();
        Folder folder;

        folder = shell.NameSpace(directory);

        for (int i = 0; i < short.MaxValue; i++)
        {
            string header = folder.GetDetailsOf(null, i);

            if (String.IsNullOrEmpty(header))
                break;

            if (!headers.ContainsKey(header))
                headers.Add(header, i);
        }

        FolderItems folderItems = folder.Items();

        foreach (FolderItem2 item in folder.Items())
        {
            if (folder.GetDetailsOf(item, 0) == fileName)
            {
                ExtendedFilePropertiesMp4 extendedFileProperties = new ExtendedFilePropertiesMp4();

                // Get data and set the properties of the extendFileProperties

                return extendedFileProperties;
            }
        }

        return null;
    }

Web.configなどに設定を変更して機能させる必要がありますか?

編集:私は反対票を投じられたようですが、それを行った人々はその理由を説明できますか?私の問題について詳しく説明したい

4

1 に答える 1

0

私がこれを使用していたのは、ビデオタグが内部にあるdivタグの幅と高さを変更することでした。

上記が機能しなかったので、loadedmetadataを使用するという別の方法を見つけました。

詳細については、次の回答を参照してください: jQuery、ビデオに高さ/幅があるかどうかを確認する

于 2012-10-14T10:34:31.810 に答える