2017-07-04 2 views
0

Visual Studio erstellt einen AppX-Ordner beim Debuggen einer UWP-App. Wenn es läuft, können Sie sehen, indem Sie im Task-Manager mit der rechten Maustaste darauf klicken und den Speicherort der Datei öffnen, der den gesamten Ordner als App-Container zum Starten der Store-App verwendet. Wenn VS es kann, weiß ich, dass es möglich ist. Wie können Sie das programmatisch machen?Starten Sie direkt einen "UWP-Ordner"

EDIT: Ok Ich hätte wahrscheinlich klarer sein sollen, ich wollte nicht den AppX-Ordner in einem Datei-Explorer buchstäblich öffnen. Ich wollte die App buchstäblich aus diesem Ordner als App-Container starten, ich versuche nur, das Programm direkt zu starten, genau wie VS es beim Debuggen macht. Wenn ich die EXE direkt öffne, bekomme ich "Diese Anwendung kann nur im Kontext eines App-Containers laufen". Ich weiß in der Tat, dass AppX das Ding ist, das als App Container benutzt wird, aber ich weiß nicht, wie VS es macht und ich muss es in einer separaten Classing Windows App machen, die ich mache. Grundsätzlich muss ich eine unverpackte UWP-App ausführen.

+1

Was tun? Öffnen Sie programmatisch den Ordner "Appx" im VS-Projekt? – kennyzx

+0

Wenn [this] (https://StackOverflow.com/a/44916696/7331395) funktioniert, dann erwägen Sie "Als Antwort markieren" –

+0

@VijayNirmal Nein, tut es nicht leid, Sie sollten sich die Bearbeitung ansehen, die ich meinem Beitrag hinzugefügt habe . –

Antwort

0

Nur Ordner in appx, StorageFolder und LocalCacheFolder können direkt gestartet werden. Sie können alle Ordner zugreifen FolderPicker

Verwendung Sie können es unter Code tun mit

  1. öffnen App Cache-Ordner

    StorageFolder local_CacheFolder = ApplicationData.Current.LocalCacheFolder; 
    await Launcher.LaunchFolderAsync(local_CacheFolder) 
    
  2. öffnen Bilder Ordner

    StorageFolder folder_Pictures = KnownFolders.PicturesLibrary; 
    await Launcher.LaunchFolderAsync(​folder_Pictures) 
    
  3. Mit FolderPicker

    FolderPicker folderPicker = new FolderPicker(); 
    StorageFolder folder = await folderPicker.PickSingleFolderAsync(); 
    await Launcher.LaunchFolderAsync(folder) 
    

mehr erfahren: Opening folders with the file Explorer, Launcher Class

1

Wenn VS es tun kann, ich weiß, es möglich ist, so wie kann man dies programmatisch tun?

Mit VS können wir auf diese Weise unsere App debuggen. Es bedeutet nicht, dass wir darüber nachdenken können, dies selbst zu tun, wenn wir Apps erstellen. Ich habe keine Ahnung, warum Sie eine unpacaged App ausführen möchten (Vielleicht haben Sie klar sein müssen darüber, warum Sie es so machen wollen) Sie können das folgende Szenario vor:.

  1. Wenn Sie diese App von debug installiert/remote debuggen mit Visual Studio, Sie können eine URL registrieren, um Ihre App zu öffnen, siehe URL-Aktivierung here.
  2. Wenn Sie nur die Exe von einem Ort an einen anderen Ort kopieren wollen und erwarten, es proaktiv zu öffnen. Ich denke nicht, dass UWP-Technologie einen Weg für Sie bietet. Es erfüllt nicht den Sicherheitszweck von UWP-Apps. Bitte erstellen Sie stattdessen ein App-Paket. Wenn Sie nicht zum Speichern senden möchten, ist Sideload die einzige Möglichkeit, wenn Sie Ihre App bereitstellen.
Verwandte Themen