zoukankan      html  css  js  c++  java
  • Windows 8 C#调用C++编写的Windows运行时组件

    Windows运行时组件是Windows 8里面通用的公共库,它可以使用C++,C#或者VB来编写,不过你的Windows 8 metro是用什么语言编写都可以调用无缝地调用Windows运行时组件。

    下面通过一个C#编写的Windows 8项目来调用一个用C++编写的Windows运行时组件。

    创建一个Windows运行时组件:

    编写如下的代码:

     
    #include "pch.h"
    #include "WinRTComponent.h"
    
    using namespace CppWinRTComponentDll2;
    
    int CalculatorSample::Add(int x, int y)
    {
        return x+y;
    }

     头文件

     
    #pragma once
    
    using namespace Windows::Foundation;
    
    namespace CppWinRTComponentDll2
    {
    
        public ref class CalculatorSample sealed
        {
        public:
            int Add(int x, int y);
    
        };
    }
     

    在C#编写的项目中调用Windows运行时组件的C++方法

    添加Windows运行时组件

    UI部分

     
    <Page
        x:Class="TestWinRTCSDemo.MainPage"
        IsTabStop="false"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:local="using:TestWinRTCSDemo"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        mc:Ignorable="d">
    
        <Grid Background="{StaticResource ApplicationPageBackgroundThemeBrush}">
            <StackPanel>
                <TextBox x:Name="txtX" HorizontalAlignment="Center" Height="45" Width="258"></TextBox>
                <TextBlock   Text="+" HorizontalAlignment="Center"  Height="45" Width="258" FontSize="14" FontWeight="Bold"/>
                <TextBox x:Name="txtY" HorizontalAlignment="Center" Height="45" Width="258"></TextBox>
                <Button Content="调用WinRT方法来相加" HorizontalAlignment="Center" Click="Button_Click_1" ></Button>
                <TextBox x:Name="txtAddResult" HorizontalAlignment="Center" Height="45" Width="258"/>
            </StackPanel>
        </Grid>
    </Page>
     

    C#代码部分

      运行的效果

    原文地址

    作者:Work Hard Work Smart
    出处:http://www.cnblogs.com/linlf03/
    欢迎任何形式的转载,未经作者同意,请保留此段声明!

  • 相关阅读:
    SSD1963 低功耗应用
    LWIP UDP 协议分析
    CY22393的应用
    合并BIN文件的两种方法 转载
    STM32 PWM 互补输出函数 调试通过
    STM32 FSMC TFT LCD
    酷睿-家政保洁软件
    查询手机归属地
    折腾报表那些事儿(3) jatoolsprint
    table表格线条显示
  • 原文地址:https://www.cnblogs.com/linlf03/p/2584129.html
Copyright © 2011-2022 走看看