Tôi đang cố gắng để vượt qua đối số dòng lệnh để một ứng dụng C#, nhưng tôi có vấn đề đi qua một cái gì đó như thế nàyĐi qua đối số dòng lệnh trong C#
"C:\Documents and Settings\All Users\Start Menu\Programs\App name"
thậm chí nếu tôi thêm " "
để lập luận.
Đây là mã của tôi:
public ObjectModel(String[] args)
{
if (args.Length == 0) return; //no command line arg.
//System.Windows.Forms.MessageBox.Show(args.Length.ToString());
//System.Windows.Forms.MessageBox.Show(args[0]);
//System.Windows.Forms.MessageBox.Show(args[1]);
//System.Windows.Forms.MessageBox.Show(args[2]);
//System.Windows.Forms.MessageBox.Show(args[3]);
if (args.Length == 3)
{
try
{
RemoveInstalledFolder(args[0]);
RemoveUserAccount(args[1]);
RemoveShortCutFolder(args[2]);
RemoveRegistryEntry();
}
catch (Exception e)
{
}
}
}
Và đây là những gì tôi đang đi qua:
C:\WINDOWS\Uninstaller.exe "C:\Program Files\Application name\" "username" "C:\Documents and Settings\All Users\Start Menu\Programs\application name"
Vấn đề là tôi có thể nhận được là người đầu tiên và thứ hai args một cách chính xác, nhưng người cuối cùng nó được gọi là C:\Documents
.
Bất kỳ trợ giúp nào?
Bạn đang cố gắng để bắt đầu này từ đâu?Dòng lệnh hoặc chương trình khác? Nếu sau này - ngôn ngữ là gì? – sharptooth
Điều gì sẽ xảy ra khi bạn chuyển một đối số như thế này vào ứng dụng của bạn? – Draco
Bạn có thể bỏ qua mã của bạn để cố truy cập đối số cũng như dòng lệnh đầy đủ mà bạn đang gõ, chẳng hạn như c: \ myapp.exe "c: \ documents \ appname" –