473,569 Members | 2,870 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

struct covnertion(VB->C#) problem

hello, all.
I am trying to convert a struct from VB to c# in order to use an old DLL.
Here is the definition in VB

Public Type CHost
Host As String * 60
Port As String * 5
Info As String * 120 'Inof returned from host
Timeout As String * 10
End Type

In the sample VB code:
Public Declare Function CConnect Lib "OLDDLL.DLL " (Host As CHost) As Integer
iError = CConnect(TheHos t)

and then the CHost.Info was set by the remote host.

I converted it to(C#)

public struct CHost
{
[System.Runtime. InteropServices .MarshalAs(Syst em.Runtime.Inte ropServices.Unm
anagedType.ByVa lTStr,SizeConst =60)]
public string Host; //host name
[System.Runtime. InteropServices .MarshalAs(Syst em.Runtime.Inte ropServices.Unm
anagedType.ByVa lTStr,SizeConst =5)]
public string Port; //host port
[System.Runtime. InteropServices .MarshalAs(Syst em.Runtime.Inte ropServices.Unm
anagedType.ByVa lTStr,SizeConst =120)]
public string Info; //Info returned from remote host
[System.Runtime. InteropServices .MarshalAs(Syst em.Runtime.Inte ropServices.Unm
anagedType.ByVa lTStr,SizeConst =5)]
public string Timeout; //timeout
};

in my c# code.
[DllImport("OLDD LL",EntryPoint= "CConnect")]
public static extern short CConnect(ref CHost Host);

short ierror = CConnect(ref theHost);

I can connect to the remote host but the theHost.Info was not set.

Could anybody let me know what I was doing wrong and what is the right way
to do it?
Nov 16 '05 #1
0 1061

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

0
1188
by: news.microsoft.com | last post by:
hello, all. I am trying to convert a struct from VB to c# in order to use an old DLL. Here is the definition in VB Public Type CHost Host As String * 60 Port As String * 5 Info As String * 120 'Inof returned from host Timeout As String * 10 End Type
6
14911
by: ~toki | last post by:
I'm triyng to use this function int result = NativeMethods.midiOutGetDevCaps( -1, ref pSI, (uint)Marshal.SizeOf(pSI) ); Docs say that pSI is a struct (below) typedef struct { WORD wMid; WORD wPid; MMVERSION vDriverVersion;
4
3523
by: C Learner | last post by:
Hi, I have an application which is using a dll written in C++. When the program go to the function below, it would raise an NullReferenceException at the line of PtrToStructure. public bool ServerCallBack(IntPtr log) { DB_T acclog = (DB_T)Marshal.PtrToStructure(log, typeof(DB_T)); }
5
2220
by: param | last post by:
Declaring struct as static is creating problem with newer version of CC compiler 5.7 in solaris. e.g. static struct new_str { int a; int b; };
8
2236
by: nurxb01 | last post by:
Hi I have a very basic doubt. The application i'm working on has some old code already in place. There are some struct data type decleared in a .h file and are being used for RPC communication. Further in the application code at some places forward declearion for these datatypes are given as class . The code compiles without any errors and...
7
2965
by: abhijeet | last post by:
Hi, I am having some problem for getting values in struct from the c dll. I have following definition Type MBRINFO szMember As String * 80 ' member name array usLevel As Integer End Type
13
6981
EARNEST
by: EARNEST | last post by:
#include <string.h> #include <ncurses.h> #include <time.h> #include <stdlib.h> typedef struct builder{ int locX; int locY; char charValue_H; char charValue_T;
0
7695
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main...
1
7668
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For...
0
7964
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the...
0
6281
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then...
1
5509
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules. He will explain when you may want to use classes...
0
5218
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert...
0
3653
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in...
0
3637
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
1209
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.