易截截图软件、单文件、免安装、纯绿色、仅160KB

Developer Support Languages VC++, C# and VB.NET


Welcome to Microsoft Developer Support, Languages team blog! You will find a lot of language related troubleshooting resources here.
Troubleshooting PInvoke Related Issues 
I am back with some more PInvoke Stuff.  Recently I was working on a PInvoke issue which I found interesting. 
I have a C++ dll which has a function whose signature is
int TestFunc(IN_STRUCT in_Params, RET_STRUCT * pret_Par). 
I wanted to call this function from C#.  Function has two arguments.  First argument is input structure which will be filled from C# code and passed to C++ code.  Second argument is output structure which is filled in C++ code and output to C# code.
 Here are the C struct definitions and a function that needs to be marshaled
#include "stdafx.h"
#include <stdio.h>
#include "Objbase.h"
#include <malloc.h>
 
 
typedef struct IN_STRUCT
{
      BYTE CMD_PType;
      BYTE CMD_PTType;
      BYTE CMD_OC;     
      BYTE CMD_Seq;
     
};
 
typedef struct RET_STRUCT    
{
  
      BYTE RET_OC;
      BYTE RET_Seq;
      BYTE RET_RetBytes;
      char *str;
      BYTE RET_PD[10];
     
};
 
 
extern "C"  __declspec(dllexport) \
        int TestFunc(IN_STRUCT in_Params, RET_STRUCT * pret_Par)
{
 
      int iRet = 0;
      pret_Par->RET_OC = in_Params.CMD_OC;
      pret_Par-


相关文档:

C#关键字this和base 區別


关于使用到了两个C#关键字this和base。 
1,C# "this " keyword 
其作用引用类的当前实例,其实看了下面这个例子就好理解了。 
主要三个作用:当前实例、参数传递和索引器 
1.1 当前实例 
class Team 

///成员变量 
private string name; 
///构造函数 
......

C# 操作XML,自己用过的代码,可能只有我能看懂

public string WriteXML(string[] values, int flag)
{

//如果flag==0则为第一次运行需要初始化XML文件
if (flag == 0)
{
//生在随机文件名
string dateName = System.DateTime.Now.ToString("yyyyMMddHHmmss");
......

C# TCP 服务端(PC)与客户端(PPC) 简单代码

服务器端代码
控件:btnStart_Click,btnSend_Click,label4,textBox1
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Collections;
using System.Threading;
using S ......

C#开发WPF/Silverlight动画及游戏系列教程(转)

C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):目录
本系列教程的示例代码下载(感谢 银光中国 提供资源分流):
第一部分源码:WPFGameTutorial_PartI(1-20节)
第二部分源码:WPFGameTutorial_PartII(21-26节)
第三部分源码:WPFGameTutorial_PartIII(27-30节)
第四部分源码:WPFGameTutorial_PartI ......

.net实例:使用C++调用C#的DLL

1 创建C# DLL,需要指定应用类型为“类库”,代码:
namespace CSLib
{
    public class Class1
    {
        private string name;
        public string Name
      ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号