.net - Strong Naming An Assembly Using Command Line Compile
May 18, 2010
I am trying to use NAnt in order to compile and sign an assembly using the vbc compiler. I have a project set up and am able to successfully sign the assembly compiling with VS2010. When I try to sign it using the command line I get this error:
vbc : error BC30140: Error creating assembly manifest: Error signing assembly -- The parameter is incorrect.
I even created a trivially simple app (just an assemblyinfo.vb file) that will not compile and sign using vbc.exe What am I doing wrong?
here is my assemblyinfo.vb:
Option Strict Off
Option Explicit On
Imports System
Imports System.Reflection
[Code]....
I have found that MSBuild also does not like having the AssemblyKeyFile attribute as I have defined it in the AssemblyInfo.vb, it gives the same failure message. So the only way I can currently get this to build correctly is to set properties on the project to tell it which key file to use and to sign the assembly.
The reason this appears to work building the project from within VS2010 is that msbuild is passing /keycontainer to vbc.exe on the command line instead of using /keyfile. Still don't know how to use the /keyfile command line parameter.
I have recently upgraded an VB6 project to vs2008. I was almost finished when the following error occured. Unable to emit assembly: Referenced assembly AxInterop.MSFlexGridLib does not have a strong name Prior to this error appering, I tested my app several times and it was fine. Only after publishing it did the error appear. I have tried all solutions I could find, but nothing helps. I have read [URL]
I am getting a strong naming violation for the dll file and really new to signing applications. How would I proceed in resolving this so that I can build the application I will be supporting? Also, as the FreeImage reference gets updated will I need to re-sign it?
I was wondering if it's possible to create a .vb source file from notepad and be able to build/compile from the command line without the need of a vb environment?
I'm trying to change the "load path" of all DLL-files that i have refereed to with this code
Function MyResolveEventHandler(ByVal sender As Object, _ ByVal args As ResolveEventArgs) As [Assembly] 'This handler is called only when the common language runtime tries to bind to the assembly
I have beginner skills using VB (am using the Express edition to learn). I would like to know how to set up a conditional statement in a Windows Form (WF) app that would check if a specific command line has been passed by another separate app that launchesthe Windows Form app using command lines, and if not passed, then the Windows Form app would shut down (exit, close).So far, I can use:
For Each s As String In My.Application.CommandLineArgs If s <> "xyz" Then Me.Close()
I have a strange problem in my VB.NET project when I want to compile it as x64. If I set the target CPU to Any CPU, it will be fine and on x64 systems it will run as x64. But if I set the target CPU to only x64, my project will show up some error/warnings and won't compile at all, here are them:
Error 1 : An attempt was made to load an assembly with an incorrect format Warning 2 : Possible problem detected while building assembly 'x': Referenced assembly 'mscorlib.dll' targets a different processor Warning 3 : Possible problem detected while building assembly 'x': Referenced assembly 'System.Data.dll' targets a different processor Warning 4 : Possible problem detected while building assembly 'x': Referenced assembly 'System.EnterpriseServices.dll' targets a different processor
This is very strange, those are system assemblies and my project is .NET Framework 2.0. How they can run when my application is set to any CPU but not at x64 only?!
First let me say that I am not sure whether or not this should go in this section or the API section, and if it needs to be moved I apologize. My issue is fairly straight forward, but for some reason I cannot get it to work.
I am trying to send a command to a command line and then submit the command. I have been trying without success to get this to work in v2008 Express and v2010 Express, Here is the code I am trying to us:
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" ( _ ByVal lpClassName As String, _ ByVal lpWindowName As String _
I am using a CheckedListBox that is populated with Filenames (full path, i.e. C:TestTest.jpg)When I have the files that I want in the CheckedListBox I wish to click a Start Button which will process the list one at a time using an exe program that runs on the Command Line. There are arguments that need to pass to the command line as well as the file location in order for the program to process.I currently have it working but the issue is the loop finishes quickly and it is left up to the CMD.exe to finish the process. What I would like is for the LOOP to wait until each file completes processing before passing the command for the next file in the CheckedListBox.There some reasons I wish for it to work this way.
1) I would like to have a button that can Pause/Restart the Loop.
2) I would like to have a button that can Stop the Loop so the whole process can end.
3) I would like to have the Loop remove each file one by one from the CheckedListBox after it has been processed.
4) I would like to display a Message once all the files have been processed.
5) And if it were possible I would like to report the status either by text or a progress bar showing where it is at in the process.
6) And the ability to add some error handling if possible.
Since the Loop finishes so quickly as it just passes the command to the command line using the & as a seperator it is the command line that is handling the rest of the process. Because of this there is not control over it in the GUI.The code I am using allows the Command Line text to display in the Form so it won't open up a seperate window to run CMD.exe. This is the desired affect as I would like everything to appear to run from within the Form itself.
I am struggling to pass a parameter to a VB.NET application via a Windows scheduled task. It works perfectly in Visual Studio (passing a command line arguement via project properties).If I am calling a VB6 application, then I will supply the following parameters and it works:
Run: c:progra~1TestTest.exe TestParameter Start In: c:progra~1Test However, if I supply the same parameters in VB.NET, the program throws an exception when it tries to create an instance of a class in the Form.Load: System.NullReferenceException cannot create instance of object.
I have also tried the following:Run: c:program filesTestTest.exe TestParameter Start In: "c:program filesTest" This time the status of the scheduled task changes to "cannot start".What is the correct way to specify command line parameters in a scheduled task for a VB.NET program?UPDATE I found the solution on this web page:[URL}.. I am still confused as to why the program would not create an instance of an object when I used the 8 bit paths (i.e. progra~1)
Is there any way, in my project's properties, to put a carriage return or a line feed in the Description field of the Assembly Information dialog box, in which the Description information would then appear in the description field of the about box of my project?
I want to run the following command line program from VB.NET: rotor95.exe -d -k "password" -i "C:FileLocation" -o "C:FileLocation" The reason for this is that I don't want my users to have to drop out to a command line prompt in order to run a tiny program for 3 seconds. Typing in a 50 - 75 character file path twice isn't any fun either.
I tried using tooltask as discussed in the MSDN2 help but it appears to work with switches (/d etc.) but not parameters (-k "password"). I couldn't get the thing to work. See the following for the tooltask example:[URL]..light now I'm just using Shell("rotor95.exe -d -k "password" -i "C:FileLocation" -o "C:FileLocation") which works just fine but I'd like to use the .NET 2.0 super-whammy version of handling this problem if there is a better way to do it.
how to use basic FTP functions straight from the command line tool. and I started using Visual Studio to create "macros" for the command line tool (i.e. writing down specific functions to perform, write them to a txt file and then run Shell() to execute.)But what I want to know is if I can open a command prompt window and then interact with it. Say for example I'm writing an FTP class/object, I'd want to be able to keep a window up for my program to send commands to (And wishfully read data back from it.)Because it seems to me that whenever I use the Shell() command it just opens a prompt window and then closes it after my line of code has been executed. Is there way to interact with a command line window from Visual Studio? And maybe even scrape data from the terminal like with terminal emulator scripts?
I have a console application which reads .txt files. I want to be able to drag a txt file over my app and it would automatically open my app and show the text files contents. I think I have to use command line arguments like this:
Sub Main(ByVal cmdArgs() As String) End Sub Sub ReadFile(FilePath as String) End Sub
But how can I pass the text files path to my ReadFile sub?
OK! I've written my application in all it's GUI glory. I now just want to be able to run it from dos/a command line/batch, with no GUI appearing? So it just runs (& does its batch process).
How can I detect if my application has been initiated from command line/dos?
How do I then not open up the application and show its GUI etc?
Printing Work Orders from with in a .NET scripted screenSummary of code:
Public Overrides Sub onload(ByVal e As ScriptonloadEventArgs) Dim CWONO As String SetValue("CWONO") = "WO_Number" '(This field is automatically created with previous code)
I have a forms app that contains a few forms. My task is to make it run invisibly when called from the command line with arguments.I have defined a Sub Main in a module and made it the startup item. I have an if/then/else that looks at args.length and if it equals 0 then I load the form and run the app normally. But how do I handle things when args are passed? I still need access to all the functions defined in my main form. Can I load the form invisibly and still "use" it?
When you open up a .txt file, the command line opens up notepad.exe with the argument %1. which opens the text file. i dont know about the function but i understand a little bit about it.
So what i wanted to do was create a .lxproj, and make it open up with my application. i have done this part so far with an installer that creates registry keys. but, what i would like to know is how to open the file. for a test i would like a message box to be displayed if the program is run by clicking the .lxproj. if its opened normally the messagebox doesnt display.
I am making a console application that will be prompted from a cmd. I want to be able inside my application to start an other program. Here is the line I am trying to use: %SystemRoot%Microsoft.NETFrameworkv4.0.30319MSbuild.exe /p:Configuration=Release test.shfproj This is making Sandcastle Help File Builder create a documentation with the test.shfproj i've builded previewsly.
I'm making a program that has to execute commands in cmd.exe, but without actually opening it. I set RedirectStandardOutput to True, and I need a way to read the result of the command from the stream. Right now, I use ReadToEnd(), but there's no end to the stream, apparently. How do I read the result of the command?[code]...
I'm a bioinformaticist, I'm trying to teach myself how to develop programs that are easy for everyday users to automate programs used in biological research. I thought VB would be great for helping people be more familiar with bioinformatics. Unfortunately, I'm brand new to VB and am stuck with my first program.
All I want to do is have a window pop up where the user then selects a file from an OpenFileDialog box, and pass the filename to a bioinformatics program names msconvert. What I've been doing keeps giving me a message that seems to says, "Unhandled exception has occurreed in your application. . . . File not found."
However, as you can see in my code (below) I have a MsgBox that shows that the correct file HAS been selected, and I can get the whole thing to run from command line.[code]....