Veröffentlicht 5. März 200916 j hi leute, besitzte vista 64 bit version und habe mir ein kleines Programm geschrieben das meine Programme verwalten soll. Es is zwingend notwendig das diese anwendung auf den ordner Program Files(x84) hat. Jedoch kommt die meldung das keine rechte vorhanden sind. was ich nicht verstehe ich bin als admin eingetragen mit vollzugriff. Muss ich da was am quellcode beachten unter vista? lg simon PS: geschrieben in VB.NET
5. März 200916 j Autor hier die exaption boa ich raffs nicht ich habe doch vollzugriff auf die ganze partition C. -.-'
5. März 200916 j Durch die Benutzerkontrollsteuerung in Vista läuft jedes Programm mit eingeschränkten Rechten selbst wenn es von einem Benutzer mit mehr Rechten gestartet wird. Daher auch bei vielen Aktionen die Frage das Adminrechte benötigt werden und ob du fortfahren willst. Damit dein Programm das auch fragt brauchst du glaub ich ein entsprechendes Manifest, aber hab ich noch nicht selber gemacht...
5. März 200916 j Autor aber die benutzerkontrollsteuerung hab ich ausgeschalten. Oha meinte natürlich Benutzerkontensteuerung. kann man den die benutzerkontrollsteuerung auch abschalten?
5. März 200916 j N'Abend, spontan hab ich dieses Tutorial gefunden. Ist zwar auf englisch und für C#, sollte dennoch kein Problem sein dies auf VB zu portieren Windows Vista - Demand UAC elevation for an application by adding a manifest using mt.exe - B# .NET Blog
6. März 200916 j Autor habe dank aber kann kein c# aber werds mir mal genauer anschaun wird schon nich so kompliziert sein. nun hab ich noch eine 2te frage: ich habe eine prozedur geschrieben die einen höheren Zeitaufwand zum abarbeiten benötigt und wollte demnach ne progressbar hinzufügen. nun hab ich das problem das sich die progressbar während der prozedur "aufhängt". wie könnte ich das beheben? Muss ich dazu Threads oder geht das auch ohne? lg simon
6. März 200916 j Also meiner Meinung nach eigenen sich für eine Progressbar am besten ein BackgroundWorker und/oder ein Timer. Vielleicht hilft dir ja das oder das oder auch dies Greetz und thank god it's friday!
6. März 200916 j Autor ich habs dieses ja unter verwendung eines timers genommen. ich definiere mal mein problem genauer. der oben schon angesprochene prozess is recht zeitaufwending und das ergebnis ist variabel. Deswegen muste ich mir was für die Progressbar einfallen lassen da wie gesagt das ergebnis variabel ist. dann hab ich die progressbar konfiguriert und in dem timer aktiviert. Dann habe ich vor meinem Prozess, welcher sich in einem button event befindet, timer1.Enabled = True und nach dem prozess Timer1.Enable = false . die steps habe ich im timer festgelegt, sowie die intervalle des timers (1000ms). so nun debugge ich, drücke an den button es läuft kurz der balken, dann hängt er solange bis der prozess abgeschlossen ist und wird beendet. :-?
6. März 200916 j Autor sry kenn mich mit threads noch nicht so gut aus :-( Das wäre dann mal der teil um den es geht. Dim returnValue As String = "" Try For Each foundFile As String In My.Computer.FileSystem.GetFiles("Pfad", FileIO.SearchOption.SearchAllSubDirectories, "*exe") Form1.ComboBox1.Items.Add(foundFile) ProgressBar1.Update() returnValue &= foundFile & Environment.NewLine Timer1.Enabled = True Next Catch ex As Exception MessageBox.Show("Exception thrown: " & ex.Message) Return End Try Form1.Show() End Sub Private Sub ProgressBar1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ProgressBar1.Click End Sub Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick Timer1.Interval = 200 Dim anz As Integer anz = Form1.ComboBox1.Items.Count ProgressBar1.Minimum = 0 ProgressBar1.Maximum = anz + 1 ProgressBar1.Step = 1 ProgressBar1.value = anz ProgressBar1.Update() ich bin hier irgendwo am verzweifeln. er macht es mit der progressbar schon allerdings von 0 auf maximum -.-' und wie gesagt mit threads kenn ich mich noch nicht so aus als das ich das mal eben schnell machen könnte. evtl fällt euch ja noch ne lösung ein. lg simon
6. März 200916 j Das dein Progressbar von 0 auf Maximal springt ist klar: ProgressBar1.value = anz Das setzt du bei jedem Tick-Event, somit kann das nicht klappen. Wie es für mich aussieht, solltest du dich mit der Materie Timer etc. eingehender beschäftigen. "Mal eben so" programmiert man sowieso nicht, da kommt nur Mist heraus Ist doch ne schöne Aufgabe für's Wochenende und Montag zeigst du dann die Lösung her :cool: Greetz
6. März 200916 j Autor so wie ich das sehe, erhöht sich bei jedem schleifendurchgang der inhalt meiner combobox um 1 found file, nun sage ich das die anz gleich der gefundenen files ist. die anz lasse ich durch das ausführen des timer in der schleife stetig aktualisieren und gehe von dem wert anz dann in der progress bar aus. ja sry das mit value ist müll ist klar warum er mir das dann direkt aufs max setzt danke is mir gar nicht aufgefallen hab ich wieder geschrieben ohne genau nachzudenken :beagolisc
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.