More than one method is found with VB but not with C#

Tech-Archive recommends: Speed Up your PC by fixing your registry



Hi,

I've want to launch an application by reflection and get his handle
back.

But when I run this code in C# then it's handled correctly.
The application(-path) is started on a new thread and obj is the hwnd
of the started application.

private static BindingFlags allFlags = BindingFlags.Public |
BindingFlags.NonPublic | BindingFlags.Static | BindingFlags.Instance;

public static object StartAUT(string applicationPath, string typeName)
{
try
{
Assembly asm = Assembly.LoadFrom(applicationPath);
Type typeUT = asm.GetType(typeName);
object obj = Activator.CreateInstance(typeUT);
MethodInfo mi = typeUT.GetMethod("Show", allFlags);
mi.Invoke(obj, null);
return obj;
}
catch{}
return null;
}

but when I launch this code in VB.NET than I received an
AmbiguousMatchException execption.


Private Shared allFlags As BindingFlags = BindingFlags.Public Or
BindingFlags.NonPublic Or BindingFlags.Static Or BindingFlags.Instance

Public Shared Function StartAUT(ByVal applicationPath As String, ByVal
typeName As String) As Object
Try
Dim asm As System.Reflection.Assembly =
System.Reflection.Assembly.LoadFrom(applicationPath)
Dim typeUT As Type = asm.GetType(typeName)
Dim obj As Object = Activator.CreateInstance(typeUT)
Dim mi As MethodInfo = typeUT.GetMethod("Show", allFlags)
mi.Invoke(obj, Nothing)
Return obj
Catch
End Try
Return Nothing
End Function


What do I wrong?

Greetings,
Davy
.



Relevant Pages

  • Re: Open a pdf file from Excel VB
    ... ' Registry value type definitions ... ' handles string, ... Dim lKeyValue As Long ... ' Launch Acrobat and required file ...
    (microsoft.public.excel.programming)
  • Re: reference application object of mdb opened with OpenDatabase
    ... When I step through the code it hits the For each obj in dbs.AllMacros and then goes to the error handler in the SeachForFiles routine and returns Error 2467: The expression you entered refers to an object that is closed or doesn't exist. ... Public Sub ChangeTableLinksInMDBs() ... Dim sPath As String, sMDB As String ...
    (microsoft.public.access.modulesdaovba)
  • Re: Help Files
    ... ByVal lpFile As String, _ ... Dim i As Long ... strMessage = "Couldn't launch the Local Help" ... Dim strTempPath As String ...
    (microsoft.public.excel.programming)
  • Re: More than one method is found with VB but not with C#
    ... The applicationis started on a new thread and obj is the hwnd ... Private Shared allFlags As BindingFlags = BindingFlags.Public Or ... Public Shared Function StartAUT(ByVal applicationPath As String, ... Dim typeUT As Type = asm.GetType ...
    (microsoft.public.dotnet.languages.vb)
  • Re: Umwandlung von String in Object
    ... ich möchte den Wert einer String Variablen als Object ... Dim Obj as Object ... Dim Objektname as String ...
    (microsoft.public.de.access)