Don't know where to place subroutines getting invalid namespace

M

Microsoft

I'm not sure where to physically place my subroutines in vb.net I get
namespace and not declared errors...

Imports System

Imports System.Management



Public Class Form1

Inherits System.Windows.Forms.Form

#Region " Windows Form Designer generated code "

Public Sub New()

MyBase.New()

'This call is required by the Windows Form Designer.

InitializeComponent()

'Add any initialization after the InitializeComponent() call

End Sub

'Form overrides dispose to clean up the component list.

Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)

If disposing Then

If Not (components Is Nothing) Then

components.Dispose()

End If

End If

MyBase.Dispose(disposing)

End Sub

'Required by the Windows Form Designer

Private components As System.ComponentModel.IContainer

'NOTE: The following procedure is required by the Windows Form Designer

'It can be modified using the Windows Form Designer.

'Do not modify it using the code editor.

Friend WithEvents TextBox1 As System.Windows.Forms.TextBox

Friend WithEvents Button1 As System.Windows.Forms.Button

<System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()

Me.TextBox1 = New System.Windows.Forms.TextBox

Me.Button1 = New System.Windows.Forms.Button

Me.SuspendLayout()

'

'TextBox1

'

Me.TextBox1.Location = New System.Drawing.Point(32, 32)

Me.TextBox1.Name = "TextBox1"

Me.TextBox1.TabIndex = 1

Me.TextBox1.Text = "TextBox1"

'

'Button1

'

Me.Button1.Location = New System.Drawing.Point(112, 144)

Me.Button1.Name = "Button1"

Me.Button1.TabIndex = 2

Me.Button1.Text = "Button1"

'

'Form1

'

Me.AutoScaleBaseSize = New System.Drawing.Size(5, 13)

Me.ClientSize = New System.Drawing.Size(292, 273)

Me.Controls.Add(Me.Button1)

Me.Controls.Add(Me.TextBox1)

Me.Name = "Form1"

Me.Text = "Form1"

Me.ResumeLayout(False)

End Sub

#End Region



Private Sub Button1_Click_1(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button1.Click

Stop

Call create_key()

Call create_value()

End Sub

End Class



Public Sub create_key()

Const HKEY_current_user = &H80000002

Dim strkeypath As Object = "Software\Microsoft\Internet Explorer\Main\mas"

Dim wmi As ManagementClass

Dim md As MethodData

Dim RemotePC As String

RemotePC = "."

wmi = New ManagementClass("\\" & RemotePC & "\root\default:StdRegProv")

Dim inParams As ManagementBaseObject = wmi.GetMethodParameters("Createkey")

inParams("hDefKey") = 2147483646

inParams("sSubKeyName") = "Software\Microsoft\Internet Explorer\Main\mas"

Dim outParams As ManagementBaseObject = wmi.InvokeMethod("Createkey",
inParams, Nothing)



' Display results

' Note: The return code of the method is provided in the "returnValue"
property of the outParams object

Console.WriteLine("Creation of registry returned: {0}",
outParams("returnValue"))

inParams = wmi.GetMethodParameters("SetStringValue")

inParams("hDefKey") = 2147483646

inParams("sSubKeyName") = "Software\Microsoft\Internet Explorer\Main\mas"

inParams("svaluename") = "test"

inParams("svalue") = "testvalue"

outParams = wmi.InvokeMethod("setstringvalue", inParams, Nothing)

Console.WriteLine("Creation of registry returned: {0}",
outParams("returnValue"))

End Sub



Public Sub create_value()

Const HKEY_current_user = &H80000002

Dim strkeypath As Object = "Software\Microsoft\Internet Explorer\Main\mas"

Dim wmi As ManagementClass

Dim md As MethodData

Dim RemotePC As String

RemotePC = "."

wmi = New ManagementClass("\\" & RemotePC & "\root\default:StdRegProv")

inParams("hDefKey") = 2147483646

inParams = wmi.GetMethodParameters("SetStringValue")

inParams("hDefKey") = 2147483646

inParams("sSubKeyName") = "Software\Microsoft\Internet Explorer\Main\mas"

inParams("svaluename") = "test"

inParams("svalue") = "testvalue"

outParams = wmi.InvokeMethod("setstringvalue", inParams, Nothing)

Console.WriteLine("Creation of registry returned: {0}",
outParams("returnValue"))

End Sub
 
H

Herfried K. Wagner [MVP]

* "Microsoft said:
I'm not sure where to physically place my subroutines in vb.net I get
namespace and not declared errors...

Error messages? Make sure, refereces to the components needed by your
application are set and namespaces are imported. You can find out in
what namespace a certain class resides by using the object browser (F2).
 
C

CJ Taylor

Private Sub Button1_Click_1(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button1.Click

Stop


Stop??

=)

Not the "best" position especially when you have calls following it...

What are you stopping?
 
C

Cor Ligthert

Hi X,

I think that the only problem with your code is that you did not set a
reference to the system.management.namespace as you already told.

You do that by clicking on

Project->Add Reference->System.management than select and ok

There are two little errors in your code, you do create the inParms and the
outParms, however I think you see that yourself because after setting this
reference those are the only errors that stay.

Nice using that stop method, I think I can use that as well before a catch,
I do that now in a little bit dummy way.

I hope this helps?

(When you do not see the answer on those two little errors reply than?)

Cor
 
M

Microsoft

I used to have the subroutines in that private sub.. There was only one
stop,... Must have been a typo
 
M

Microsoft

I added the references and moved the subroutines as suggested. Thanks!

The key gets created, but unfortuanately the second subroutine is supposed
to create a value and it doesn't return an error or create a value..
outParams("returnValue") comes back as a 6... not sure what that means. Here
is the working code.

Are they any other values I can "catch" to help me figure out wjy I'm not
seeing a value ?



I am going to try to read a value next and see if that works.

Imports System

Imports System.Management



Public Class Form1

Inherits System.Windows.Forms.Form

#Region " Windows Form Designer generated code "

Public Sub New()

MyBase.New()

'This call is required by the Windows Form Designer.

InitializeComponent()

'Add any initialization after the InitializeComponent() call

End Sub

'Form overrides dispose to clean up the component list.

Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)

If disposing Then

If Not (components Is Nothing) Then

components.Dispose()

End If

End If

MyBase.Dispose(disposing)

End Sub

'Required by the Windows Form Designer

Private components As System.ComponentModel.IContainer

'NOTE: The following procedure is required by the Windows Form Designer

'It can be modified using the Windows Form Designer.

'Do not modify it using the code editor.

Friend WithEvents TextBox1 As System.Windows.Forms.TextBox

Friend WithEvents Button1 As System.Windows.Forms.Button

<System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()

Me.TextBox1 = New System.Windows.Forms.TextBox

Me.Button1 = New System.Windows.Forms.Button

Me.SuspendLayout()

'

'TextBox1

'

Me.TextBox1.Location = New System.Drawing.Point(32, 32)

Me.TextBox1.Name = "TextBox1"

Me.TextBox1.TabIndex = 1

Me.TextBox1.Text = "TextBox1"

'

'Button1

'

Me.Button1.Location = New System.Drawing.Point(112, 144)

Me.Button1.Name = "Button1"

Me.Button1.TabIndex = 2

Me.Button1.Text = "Button1"

'

'Form1

'

Me.AutoScaleBaseSize = New System.Drawing.Size(5, 13)

Me.ClientSize = New System.Drawing.Size(292, 273)

Me.Controls.Add(Me.Button1)

Me.Controls.Add(Me.TextBox1)

Me.Name = "Form1"

Me.Text = "Form1"

Me.ResumeLayout(False)

End Sub

#End Region



Private Sub Button1_Click_1(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button1.Click

Stop

Call create_key()

Call create_value()

End Sub

Private Sub create_key()

Const HKEY_current_user = &H80000002

Dim strkeypath As Object = "Software\Microsoft\Internet Explorer\Main\mas"

Dim wmi As ManagementClass

Dim md As MethodData

Dim RemotePC As String

RemotePC = "."

wmi = New ManagementClass("\\" & RemotePC & "\root\default:StdRegProv")

Dim inParams As ManagementBaseObject = wmi.GetMethodParameters("Createkey")

inParams("hDefKey") = 2147483646

inParams("sSubKeyName") = "Software\Microsoft\Internet Explorer\Main\mas"

Dim outParams As ManagementBaseObject = wmi.InvokeMethod("Createkey",
inParams, Nothing)

Console.WriteLine("Creation of registry returned: {0}",
outParams("returnValue"))

End Sub



Private Sub create_value()

Const HKEY_current_user = &H80000002

Dim strkeypath As Object = "Software\Microsoft\Internet Explorer\Main\mas"

Dim wmi As ManagementClass

Dim md As MethodData

Dim RemotePC As String

RemotePC = "."

wmi = New ManagementClass("\\" & RemotePC & "\root\default:StdRegProv")

Dim inParams As ManagementBaseObject =
wmi.GetMethodParameters("SetStringValue")

inParams("hDefKey") = 2147483646

inParams = wmi.GetMethodParameters("SetStringValue")

inParams("hDefKey") = 2147483646

inParams("sSubKeyName") = "Software\Microsoft\Internet Explorer\Main\mas"

inParams("svaluename") = "test"

inParams("svalue") = "testvalue"

Dim outParams As ManagementBaseObject = wmi.InvokeMethod("setstringvalue",
inParams, Nothing)

Console.WriteLine("Creation of registry returned: {0}",
outParams("returnValue"))

End Sub





End Class




the out
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top