日期:2014-05-18  浏览次数:21074 次

这些代码是什么意思?能否翻译成C#语句?
public enum Status
  {
  IO_SUCCESS,
  IO_FAILURE,
  ERR_INVALID_PARAM,
  ERR_ALREADY_CONNECTED,
  ERR_INSUFFICIENT_MEMORY,
  ERR_INVALID_DRIVER,
  ERR_DRIVERLOAD_FAILURE,
  ERR_DRIVER_EXCEPTION,
  ERR_DRIVER_FAILURE,
  WRITE_TIMED_OUT,
  READ_TIMED_OUT,
  }
  public unsafe Status GetChannelLimits(string channelName, out string minValue, out string maxValue)
  {
  basic_string<char,std::char_traits<char>,std::allocator<char> > local4;
  Status status = Status.IO_FAILURE;
  if (channelName == null)
  {
  return Status.ERR_INVALID_PARAM;
  }
  std.basic_string<char,std::char_traits<char>,std::allocator<char> >.{ctor}(&local4);
  try
  {
  basic_string<char,std::char_traits<char>,std::allocator<char> > local3;
  std.basic_string<char,std::char_traits<char>,std::allocator<char> >.{ctor}(&local3);
  try
  {  
  basic_string<char,std::char_traits<char>,std::allocator<char> > local2;
  std.basic_string<char,std::char_traits<char>,std::allocator<char> >.{ctor}(&local2);
  try
  {
  basic_string<char,std::char_traits<char>,std::allocator<char> > local;
  this.m_pConversionManager.MarshalAsString(channelName, &local4);
  basic_string<char,std::char_traits<char>,std::allocator<char> >* localPtr2 = &local;
  status = GetChannelLimits(std.basic_string<char,std::char_traits<char>,std::allocator<char> >.{ctor}(localPtr2, (basic_string<char,std::char_traits<char>,std::allocator<char> > modopt(IsConst)* modopt(IsImplicitlyDereferenced)) &local4), &local3, &local2);
  minValue = new string(std.basic_string<char,std::char_traits<char>,std::allocator<char> >.c_str((basic_string<char,std::char_traits<char>,std::allocator<char> > modopt(IsConst)* modopt(IsConst) modopt(IsConst)) &local3));
  maxValue = new string(std.basic_string<char,std::char_traits<char>,std::allocator<char> >.c_str((basic_string<char,std::char_traits<char>,std::allocator<char> > modopt(IsConst)* modopt(IsConst) modopt(IsConst)) &local2));
  }
  fault
  {
  ___CxxCallUnwindDtor(std.basic_string<char,std::char_traits<char>,std::allocator<char> >.{dtor}, (void*) &local2);
  }
  std.basic_string<char,std::char_traits<char>,std::allocator<char> >.{dtor}(&local2);
  }
  fault
  {
  ___CxxCallUnwindDtor(std.basic_string<char,std::char_traits<char>,std::allocator<char> >.{dtor}, (void*) &local3);
  }
  std.basic_string<char,std::char_traits<char>,std::allocator<char> >.{dtor}(&local3);
  }
  fault
  {
  ___CxxCallUnwindDtor(std.basic_string<char,std::char_traits<char>,std::allocator&l