小编Ale*_*Lee的帖子

如何在Windows 8中将字节数组转换为InMemoryRandomAccessStream或IRandomAccessStream

现在我遇到的问题是如何在Windows 8中将字节数组转换为InMemoryRandomAccessStream或IRandomAccessStream?

这是我的代码,但它不起作用,请参考以下代码

internal static async Task<InMemoryRandomAccessStream> ConvertTo(byte[] arr)
{
    InMemoryRandomAccessStream randomAccessStream = new InMemoryRandomAccessStream();
    Stream stream = randomAccessStream.AsStream();
    await stream.WriteAsync(arr, 0, arr.Length);
    await stream.FlushAsync();

    return randomAccessStream;
}
Run Code Online (Sandbox Code Playgroud)

然后我创建RandomAccessStreamReference并设置requst数据包以便将图像共享给其他应用程序

    private static async void OnDeferredImageStreamRequestedHandler(DataProviderRequest Request)
    {
        DataProviderDeferral deferral = Request.GetDeferral();
        InMemoryRandomAccessStream stream = await ConvertTo(arr);
        RandomAccessStreamReference referenceStream =
                    RandomAccessStreamReference.CreateFromStream(stream);
        Request.SetData(referenceStream);
    }
Run Code Online (Sandbox Code Playgroud)

但结果是我无法将图像字节数组共享给其他应用程序,我的代码是否有问题?在我看来,将byte []转换为InMemoryRandomAccessStream时会发生错误,但它没有抛出异常.

有谁知道怎么做?如果你可以将字节数组转换为IRandomAccessStream,同样可以帮助我.或者我的代码中有其他错误?

c# xaml microsoft-metro windows-8 uwp

17
推荐指数
3
解决办法
2万
查看次数

MSBuild错误:命令退出,代码为255

我想在构建之前做一些事情,所以我在预构建事件中添加命令行.

for /f "tokens=*" %a in ('dir /b /s /a-d "$(ProjectDir)lib"') do @copy "%a" "$(TargetDir)" /y
Run Code Online (Sandbox Code Playgroud)

此命令用于将lib(项目目录)中的所有文件复制到调试目标.

但是当我构建项目时,它有一个错误MSB3073:命令"for/f"tokens =*"%a in('dir/b/s/ad"$(ProjectDir)lib"')do @copy"%一个""$(TargetDir)"/ y:VCEnd"退出代码255.但是我在CMD中执行命令,没有问题.

有人知道,如何解决这个问题?IDE是VS2013,C++项目

for for可能在Visual Studio的批处理文件中不起作用吗?

c++ msbuild visual-studio visual-c++

3
推荐指数
1
解决办法
8739
查看次数

如何获取MPAndroidChart中y轴标签的宽度

如何获取左y轴标签的宽度?或图表起点与 y 轴之间的空间

在此输入图像描述

java charts android linechart mpandroidchart

2
推荐指数
1
解决办法
1998
查看次数

默认情况下总是在菜单切换中运行

为什么默认情况总是运行?

public class HelloWorld {
    public enum ScenarioState {
        INIT,
        START,
        STOP,
        DESTROY
    }

    public static void displayRecord(ScenarioState state) {
        switch (state) {
            case INIT:
            case START:
            case STOP:
                System.out.println("1");
            default:
                System.out.println("default");
        }
    }

    public static void main(String[] args) {
        ScenarioState state = ScenarioState.INIT;
        displayRecord(state);
    }
}
Run Code Online (Sandbox Code Playgroud)

预期输出应该是

1

但实际输出:

1
默认

为什么会造成这个问题呢?任何人都可以帮助我

java switch-statement

-2
推荐指数
1
解决办法
2371
查看次数