add .dll

My visual studio project fine on the development machine. I am able to install the project on other machines, but when loading one of the forms I receive the error: Could not load file or assembly "Microsoft.VsDesigner,8.0.0.0. This error only occurs on one form, all others load fine. I am not sure if I am missing a component, or if there is a way I can change the form to elimiate this dependency. Any help would be greatly appreciated.Mark

Answer this question

add .dll

  • spj11

    What exactly are you doing with that DLL The name suggests that it is part of Visual Studio, in which case you cannot distribute it.

    Jonathan


  • Mong

    .Net 2.0 is already on the target machine. It is a prerequisite and was loaded on to the machine the first time I installed the application. The application has been deployed using a setup and using click once. Both yielded the same missing assembly error.


    Initially the DLL was not showing as a reference for the project. I changed this attempting to install the DLL during setup. This was no help, same error as I was unable to get the DLL to install to c:\windows\assembly. When included in the references, it was listed in the unused references.

    I am going to attempt reverse engineer the form which causes the error during run-time. Thanks for the reply

    -Mark

    The code for the form which wont load is listed below......


    Public Class Form2
    Public issaved As Integer
    Private Sub MsdsBindingNavigatorSaveItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MsdsBindingNavigatorSaveItem.Click

    Me.Validate()
    Me.MsdsBindingSource.EndEdit()
    Me.MsdsTableAdapter.Update(Me.MsdsDataSet.msds)

    End Sub

    Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

    issaved = 0

    Me.ProducthapsTableAdapter.Fill(Me.MsdsDataSet.producthaps)
    Me.Haps_list__2_TableAdapter.Fill(Me.MsdsDataSet._Haps_list__2_)
    Me.MsdsTableAdapter.Fill(Me.MsdsDataSet.msds)

    GroupBox2.Enabled = False

    Dim isaved As Integer

    isaved = 0


    End Sub

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

    If issaved = 1 Then
    If MessageBox.Show(" Would you like to save changes ", "File not saved! ", MessageBoxButtons.YesNo, MessageBoxIcon.Exclamation) = Windows.Forms.DialogResult.OK Then
    Try
    Me.Validate()
    Me.MsdsBindingSource.EndEdit()
    Me.MsdsTableAdapter.Update(Me.MsdsDataSet.msds)
    Me.ProducthapsBindingSource.EndEdit()
    Me.ProducthapsTableAdapter.Update(Me.MsdsDataSet.producthaps)

    Catch ex As Exception
    MsgBox(ex.Message)
    End Try
    End If
    End If
    issaved = 0
    Me.Close()

    End Sub

    Private Sub BindingNavigatorMoveNextItem1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)

    End Sub

    Private Sub BindingNavigatorMoveNextItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BindingNavigatorMoveNextItem.Click
    ListBox1.Items.Clear()
    Button5.Enabled = True
    End Sub

    Private Sub MsdsBindingNavigator_RefreshItems(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MsdsBindingNavigator.RefreshItems

    End Sub

    Private Sub BindingNavigator1_RefreshItems(ByVal sender As System.Object, ByVal e As System.EventArgs)

    End Sub

    Private Sub ToolStripButton1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
    Me.Validate()
    Me.ProducthapsBindingSource.EndEdit()
    Me.ProducthapsTableAdapter.Update(Me.MsdsDataSet.producthaps)
    End Sub

    Private Sub Product_idTextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)

    End Sub

    Private Sub Product_idTextBox_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Product_idTextBox.TextChanged

    End Sub

    Private Sub Ingredient_idTextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)

    End Sub

    Private Sub Ingredient_idTextBox_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Ingredient_idTextBox.TextChanged

    End Sub

    Private Sub Wt_peercentTextBox_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)

    End Sub

    Private Sub IDTextBox_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles IDTextBox.TextChanged

    End Sub

    Private Sub VocTextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)

    End Sub

    Private Sub Product_weightTextBox_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)

    End Sub

    Private Sub Product_wtTextBox_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Product_wtTextBox.TextChanged

    End Sub

    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)

    End Sub

    Private Sub WtpercentTextBox_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)

    End Sub

    Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click


    MsdsBindingNavigator.Enabled = True

    Try
    Me.Validate()
    Me.MsdsBindingSource.EndEdit()
    Me.MsdsTableAdapter.Update(Me.MsdsDataSet.msds)
    'Me.Validate()
    'Me.ProducthapsBindingSource.EndEdit()
    Me.ProducthapsTableAdapter.Update(Me.MsdsDataSet.producthaps)
    Catch ex As Exception

    MsgBox(ex.Message)

    End Try

    Button3.Enabled = False
    Button4.Enabled = False
    Button5.Enabled = True
    GroupBox2.Enabled = False
    MsdsBindingNavigator.Enabled = True

    issaved = 0

    End Sub

    Private Sub BindingNavigatorAddNewItem1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)

    End Sub

    Private Sub BindingNavigatorAddNewItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BindingNavigatorAddNewItem.Click
    Button3.Enabled = True
    Button4.Enabled = True
    Button5.Enabled = False
    GroupBox2.Enabled = True
    MsdsBindingNavigator.Enabled = False
    ListBox1.Items.Clear()

    End Sub

    Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click

    MsdsBindingNavigator.Enabled = False

    Dim newProducthapsRow As DataRow = MsdsDataSet.Tables("Producthaps").NewRow()

    ListBox1.Items.Add(CasComboBox.Text & " " & DescriptionTextBox.Text & " (Wt/percent: " & Wt_peercentTextBox.Text & ")")

    newProducthapsRow("product_ID") = CInt(Val(Product_idTextBox.Text))
    newProducthapsRow("ingredient_ID") = CInt(Val(IDTextBox.Text))
    newProducthapsRow("voc") = Val(VocTextBox.Text)
    newProducthapsRow("wt/peercent") = Val(Wt_peercentTextBox.Text)
    newProducthapsRow("product_weight") = Val(Product_wtTextBox.Text)
    newProducthapsRow("ingredient") = DescriptionTextBox.Text

    MsdsDataSet.Tables("Producthaps").Rows.Add(newProducthapsRow)

    'Button3.Enabled = False
    issaved = 1

    End Sub

    Private Sub VocTextBox_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles VocTextBox.TextChanged

    End Sub

    Private Sub BindingNavigatorDeleteItem1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)

    End Sub

    Private Sub BindingNavigatorDeleteItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BindingNavigatorDeleteItem.Click

    End Sub

    Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)

    End Sub

    Private Sub DescriptionTextBox_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DescriptionTextBox.TextChanged

    End Sub

    Private Sub CasComboBox_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CasComboBox.SelectedIndexChanged

    End Sub


    Private Sub ListBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListBox1.SelectedIndexChanged

    End Sub

    Private Sub FillToolStripButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
    Try
    Me.Haps_list__2_TableAdapter.Fill(Me.MsdsDataSet._Haps_list__2_)
    Catch ex As System.Exception
    System.Windows.Forms.MessageBox.Show(ex.Message)
    End Try

    End Sub

    Private Sub GroupBox2_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles GroupBox2.Enter

    End Sub

    Private Sub TypeTextBox_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TypeTextBox.TextChanged

    End Sub

    Private Sub RadioButton1_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RadioButton1.CheckedChanged
    TypeTextBox.Text = RadioButton1.Text
    End Sub

    Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)

    End Sub



    Private Sub RadioButton2_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RadioButton2.CheckedChanged
    TypeTextBox.Text = RadioButton2.Text
    End Sub

    Private Sub RadioButton3_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)


    End Sub

    Private Sub RadioButton4_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)

    End Sub

    Private Sub Wt_peercentTextBox_TextChanged_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Wt_peercentTextBox.TextChanged

    End Sub



    Private Sub FillByToolStripButton_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs)
    Try
    Me.Haps_list__2_TableAdapter.FillBy(Me.MsdsDataSet._Haps_list__2_)
    Catch ex As System.Exception
    System.Windows.Forms.MessageBox.Show(ex.Message)
    End Try

    End Sub

    Private Sub ListBox2_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)

    End Sub

    Private Sub Button5_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click

    Dim msdsmaxrows As Integer
    Dim pmsdsmaxrows As Integer
    Dim inc As Integer
    Dim comparemsds As Integer
    Dim compareproducthaps As Integer

    msdsmaxrows = Me.MsdsDataSet.Tables("MSDS").Rows.Count
    pmsdsmaxrows = Me.MsdsDataSet.Tables("producthaps").Rows.Count
    comparemsds = Val(Product_idTextBox.Text)
    inc = 0

    'inc = inc + 1

    Do While inc <> pmsdsmaxrows
    compareproducthaps = Val(Me.MsdsDataSet.Tables("producthaps").Rows(inc).Item(0))

    If comparemsds = compareproducthaps Then
    ListBox1.Items.Add(Me.MsdsDataSet.Tables("producthaps").Rows(inc).Item(5))
    'txtSurname.Text = ds.Tables("AddressBook").Rows(0).Item(2)
    End If
    inc = inc + 1

    Loop

    Button5.Enabled = False
    End Sub

    Private Sub BindingNavigatorMovePreviousItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BindingNavigatorMovePreviousItem.Click
    ListBox1.Items.Clear()
    Button5.Enabled = True
    End Sub

    Private Sub Button2_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs)

    End Sub

    Private Sub GroupBox1_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles GroupBox1.Enter

    End Sub
    End Class

  • Marco Achtziger

    It is not installed on the target machines, thus the error. I guess my question is how to add it during setup Is it part of one of the components When adding assemblies, microsoft.vsdesigner 8.0.0.0 isnt one of the options listed.
  • hoinar

    I'm glad you got it figured out, Mark, though I'm unhappy that you had to go through all of that. (I'm wondering is something in the generated code got zapped, or... )

    If it reoccurs, I encourage to file a report at http://lab.msdn.microsoft.com/productfeedback/ and we'll make sure that it gets to the right person.

    --Matt--*



  • Arjun Banker

    Clarkiwrc,

    My apologies for the high frustration factor on this one! You should definitely avoid just installing bits and pieces of .NET because you won't necessarily know all of the interdependencies. Two questions that will help us figure this out:

    1. Is .NET 2.0 already on the target machine, or is it an earlier version of .NET

    2. This is actually several questions: How are you deploying the application -- are you using a setup project or click-once, is the required DLL showing up as a reference for that project (you might need to choose "Show All files" in the solution explorer to see this), and is the deployment vehicle marked as requiring .NET 2.0 as a pre-requisite

    --Matt--*



  • itmik3

    I am not knowingly doing anything with that .dll. I only get the error when opening one of the many forms in the project. If there is something which I am doing programatically which triggers the need for this assembly, Id gladly eliminate it in my application to get around this problem.


    I have found the microsoft.vsdesigner.dll online but cannot manage to get it to install to the correct location on the target computer.

    mark




  • Thodlak

    Through a process of trial and error I was able to determine that by deleting a listbox on the form and replacing it with another listbox, the form loads fine. Not sure if the listbox was corrupt, but the properties of the old and new listboxes were identical, and they contained no code. Just some wierd fluke which caused me to chase my tail for a week.

    Thanks for the help.

    -Mark


  • Star Green

    make sure Microsoft.VsDesigner is installed in GAC. you can look under C:\WINNT\assembly\ or C:\Window\assembly\

  • m.dobler

    When running my project on a non-development machine, after loading one of the forms I receive the error: Could not load file or assembly "Microsoft.VsDesigner,8.0.0.0. I realize this is missing on the target machines GAC. How does install this dll to the GAC of the target machine during install If possible could you be very explicit in detailing the process to include this during the publish process Thanks in advance.-Mark
  • add .dll