How to update DLL in automation anywhere using metabot - dll

How to update DLL in automation anywhere using metabot. When i am replacing old DLL with updated one its not working. metabot still using old DLL.
i have tried to replace old dll with new one but not working.

You have to delete the old DLL from the metabot and then add the new one.
Double check that the new DLL is actually a new version, for example if you have a C# project go to that project, rebuild it and then go to bin -> Debug | Release -> select the new DLL from here
I never had issues with that doing these steps.

You don't have to delete the DLL as the currently accepted answer states.
All I did was:
Open the MetaBot Designer
Click Add DLL
Choose the updated DLL
You are prompted to replace the existing DLL, "A .NET API DLL with the same name already exists in this metabot. Do you want to replace it?". Choose Yes.
At this point the DLL is updated and the existing logic and variables are intact. If you changed one of the existing APIs, you will need to update the corresponding logic, etc.

Related

Migrating videosoft vsindextab from VB6 to VB.NET

I have a VB6 project I need to migrate to VB.NET.
I tryied with both the migrating tool of VB.NET express 2005 and 2008 with the same result.
When I try to open a form in designer mode containing a videosoft's vsindextab component in the resulting project of the migration, I receive the following error:
Warning 1 Unknown name. (Exception from HRESULT: 0x80020006 (DISP_E_UNKNOWNNAME)) C:\gestionbtdotnet\FormBT.Designer.vb 261 0
The line in error is in the designer.vb file and is the following:
CType(Me.vsIndexTab1, System.ComponentModel.ISupportInitialize).BeginInit()
(The vsIndexTab being a vsOcx6lib.vsindextab object)
I searched all over the web about it but couldn't find anything.
I tryied using a different .NET Framework version, I tryied copying the ocx file (vsocx6.ocx) to every possible places, I tryied simply erasing the line in error.
No luck.
Can anyone help me?
You can only migrate code. Projects that depend on third-party components that are binary-only and not .Net compatible (like the vsindextab component used here) will not migrate. Here are your options:
Check with the original vendor for a .Net version of the same component.
Find another .Net-compatible replacement for the component, and re-write code to use the new replacement.
Rewrite existing code to avoid using the component anywhere at design time. Factor that section out to it's own library that you can invoke at run-time only. Then build custom dllimport code to use that library at run time.
Write your own replacement for the component, relying on existing .Net widgets.

Use Dll of the same name for different projects

I am trying to develop a small utility program that will be deployed with other application that we already have. In order to make the utility work, I need to know the connectionString used by the application to access the database.
Since I have old and new applications, they have different ways to connect to the database. So I figured the way I would do it is something like that
All project will need to implement a dll named "Connect.dll"
This dll will include one public function name GetConnString. This function will return a string which correspond to the connection string to use to connect to the main database.
What I wanted to do was to simply include the utility in the same folder as the application and use the Connect.dll found within the folder. So far though, unless I copy the original dll found within my utility project, the utility will crash. Is there any way to do this ?
Regards,
Create a non signed assembly and enforce that all the clients use the same assembly version with (of course) the same signature.
In your utility set the property "Specific Version" to False.
This should do the trick.

Shadowcopy of AppDomain does not updating referenced dll

We have a main application (Winforms) with several dll's referenced containing Logic and UI Layers. After some research on how to perform auto-update in a winforms application, I found a solution using AppDomain and the ShadowCopies feature.
Another executable look for updates and makes the exchange of files.
Okay, but now, I got the following situation:
I start the main application (loaded through the new AppDomain).
I open a form that is in a referenced dll ("ReferenceA"). This dll is copied and instantiated from the copy. (Great!)
At this time the system receives an update with new versions of "ReferenceA" and "ReferenceB", and makes the exchange of files.
I open another form that is in "ReferenceB". This dll is copied and instantiated from the copy, but this dll also references "ReferenceA" that is not updated by ShadowCopy because it is already in the directory.
Now the system is running a newer version of "ReferenceB" with an older version of "ReferenceA". In my test I created a new method in "ReferenceA" then I obviously got the message: "Method not found".
Any suggestions on how I can solve this?

Renaming the existing files during MSI installation WIX

I have a WIX Installer and in the installer i also copy a tutorial project created in VS 2012. What i want is if user has changed the tutorial project by adding new files in it then i just want to rename the existing tutorial and and copy the new tutorail and if user has not changed the existing tutorial then i just want to replace the existing tutorial with the new tutorial.
Is the first question is, Is it really possible using WIX? (Does WIx gives us some functionality like that)
if its possible can some will guide me how to do that?
It should be possible using the MoveFile element but it's going to be really tricky. I worked for a company that created a .NET SDK and we build custom project types for VS that allowed the user to say File | New | SomeTypeOfApp and then use that for training. We also kept our "tutorial" apps in ZIP files and an application that acted as a front end asking the developer where they would like to extract the sample app to. This greatly simplified the installer requirements.

Microsoft.Xrm.Sdk.AttributeLogicalNameAttribute is not defined?

I'm attempting to create a new project similar to the SDK project basicoperations for Dynamics CRM 2011. I am using the myorganizationcrmsdktypes.vb file included with the SDK helper code, but when I attempt to build the code I get tons of errors in myorganizationcrmsdktypes.vb and I'm not sure why. The errors look like this:
Type 'Microsoft.Xrm.Sdk.AttributeLogicalNameAttribute' is not defined.
The code works fine when run in the original project, just not in mine?
Add a reference to: Microsoft.Xrm.Sdk (/sdk/bin/microsoft.xrm.sdk.dll)
Also add another reference to: System.Runtime.Serialization
Additionally in your project settings - try clearing the Root namespace
Have you tried your code on a different machine? This is less of a CRM issue and more of a .net issue. If your vb project has a reference to the Microsoft.Xrm.Sdk dll but yet your code can't find the classes within it, I'm almost wondering if something is corrupt.
I'd try recreating the solution / project. I'd also try doing a ctrl-. (control period) to see if VS can resolve it for you...