What are the challenges you face when working across database platforms? Take the survey

Error while Obfuscation

winmanwinman Posts: 8
edited April 3, 2013 12:21PM in SmartAssembly
We have developed project using vb.net for our internal puproses and then we obfuscated it. It is throwing error as mentioned below.
“Public member ‘Var1’ on type ‘e’ not found.”
Public Sub get_constants_from_DbList(ByRef frm As Object, ByRef sDbname As String)

        For Each Row As DataRow In CommonObj.DSCommonProc.Tables("dblist").Rows 
            	If StrComp(Row("DbName").ToString, sDbname, CompareMethod.Text) = 0 Then
               	 prg_id = Row("PrgId").ToString
               	 frm.Var1= Row("ChangesDbName").ToString
              	 frm.Var2 = Row("LoadTableName").ToString
              	 frm.Var3 = Row("ServerName").ToString
              	 Exit Sub
            End If

 End Sub
A form (named FrmMain) is passed to the parameter ‘frm’ from the calling procedure to this sub-routine. Var1, etc are public variables in that form.
Obfuscation tools we tried are –
1. SmartAssembly 6
2. PreEmptive Dotfuscator and Analytics CE (which has come with Visual studio 2012)
Without obfuscation exe is working fine.
Error is thrown while assigning variable ‘Var1’ in the sub-routine. If the code line is modified as below then obfuscated exe will work fine.
FrmMain.Var1= Row("ChangesDbName").ToString

We thought obfuscation is missing late binding & tried similar type of code in a small sample project. But that didn’t have any error. We have attached this small code. But due to its magnitude we can’t upload original project.
How can we trace the error?


Sign In or Register to comment.