Ein Programm in eine anderes Verzeichnis als C: installieren ?

der Hirsch

Cadet 1st Year
Registriert
Sep. 2016
Beiträge
9
Hallo,

ich möchte gerne ein Programm (Spiel) in ein anderes Verzeichnis als C: installieren. Ich kann es bei der Installation nicht auswählen. Das einzige was ich wählen kann ist Installieren oder nicht.

Ich hätte das Spiel gerne in einem anderen Verzeichnis. Es sollte aber noch funktionieren. Ich habe schon probiert alle datein von C: nach S: zu kopieren aber dann startet das Spiel nicht.

Wär echt cool wenn mir hier jemand helfen könnte.

Grüße
 
welches spiel?
gibt sicher erweiterte optionen bei der installation
 
Na gut, das Spiel kenn ich nicht. Scheint aber auch nur 1 GB groß zu sein.
Wenn das Spiel es nicht anbietet (auch nicht als erweitere Option) dann geht es halt nicht.

Einzige Möglichkeit, symbolische Verknüpfungen nutzen. Habe aber keine Erfahrtung damit.
 
Irgendwas muss dem Spiel sagen, dass es sich in c befindet oder ist das vielleicht in der registry? Das muss doch irgendwie änderbar sein.

Ok trotzdem danke für die Hilfe.
 
Normal musst du nur nach dem verschieben den Ordner auf machen und dir eine neue Verknüpfung zur exe erstellen.
 
Ja das hab ich gemacht. Dann passiert folgendes.

2016-09-18_124435.jpg




MagicExceptionType: ApplicationConfigurationException
Severity: Fatal
Message: Sorry, an unexpected error has occurred.
ActionToTake: The application will now close.
ExtraDetails:
InternalDetails: Failed to initialize SessionManager.
bei Shiny.ShellViewModel.CreateSession()
bei Shiny.ShellViewModel..ctor()
bei Shiny.ShellView.SetupScenesAndViewModel()
bei Shiny.ShellView.ShellView_Loaded(Object sender, RoutedEventArgs e)
bei System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
bei System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
bei MS.Internal.FrameworkObject.OnLoaded(RoutedEventArgs args)
bei System.Windows.BroadcastEventHelper.BroadcastEvent(DependencyObject root, RoutedEvent routedEvent)
bei System.Windows.BroadcastEventHelper.BroadcastLoadedEvent(Object root)
bei System.Windows.Media.MediaContext.FireLoadedPendingCallbacks()
bei System.Windows.Media.MediaContext.FireInvokeOnRenderCallbacks()
bei System.Windows.Media.MediaContext.RenderMessageHandlerCore(Object resizedCompositionTarget)
bei System.Windows.Media.MediaContext.RenderMessageHandler(Object resizedCompositionTarget)
bei System.Windows.Interop.HwndTarget.OnResize()
bei System.Windows.Interop.HwndTarget.HandleMessage(WindowMessage msg, IntPtr wparam, IntPtr lparam)
bei System.Windows.Interop.HwndSource.HwndTargetFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
bei MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
bei MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
bei System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
bei MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(Object source, Delegate method, Object args, Int32 numArgs, Delegate catchHandler)
bei System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs)
bei MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)
bei MS.Win32.UnsafeNativeMethods.ShowWindow(HandleRef hWnd, Int32 nCmdShow)
bei MS.Win32.UnsafeNativeMethods.ShowWindow(HandleRef hWnd, Int32 nCmdShow)
bei System.Windows.Window.ShowHelper(Object booleanBox)
bei Shiny.App.OnStartup(StartupEventArgs e)
bei System.Windows.Application.<.ctor>b__1(Object unused)
bei System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
bei MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(Object source, Delegate method, Object args, Int32 numArgs, Delegate catchHandler)
bei System.Windows.Threading.DispatcherOperation.InvokeImpl()
bei System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
bei System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
bei System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
bei System.Windows.Threading.DispatcherOperation.Invoke()
bei System.Windows.Threading.Dispatcher.ProcessQueue()
bei System.Windows.Threading.Dispatcher.WndProcHook(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
bei MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
bei MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
bei System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
bei MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(Object source, Delegate method, Object args, Int32 numArgs, Delegate catchHandler)
bei System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs)
bei MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)
bei MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg)
bei MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg)
bei System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame)
bei System.Windows.Application.RunInternal(Window window)
bei System.Windows.Application.Run()
bei Shiny.App.Main()


Inner exception:MagicExceptionType: MagicException
Severity: Fatal
Message: Sorry, an unexpected error has occurred.
ActionToTake: The application will now close.
ExtraDetails:
InternalDetails: Assertion failed: HelpTopics not found at 'M:\2.0\RN8Q2YKA.KAV\WTWBB6JJ.CNP\mtgo..tion_98ecb8aa8cf73f16_0003.0004_760941f698c920e8\HelpTopics.xml'
bei Shiny.ShellViewModel.CreateSession()
bei Shiny.ShellViewModel..ctor()
bei Shiny.ShellView.SetupScenesAndViewModel()
bei Shiny.ShellView.ShellView_Loaded(Object sender, RoutedEventArgs e)
bei System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
bei System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
bei MS.Internal.FrameworkObject.OnLoaded(RoutedEventArgs args)
bei System.Windows.BroadcastEventHelper.BroadcastEvent(DependencyObject root, RoutedEvent routedEvent)
bei System.Windows.BroadcastEventHelper.BroadcastLoadedEvent(Object root)
bei System.Windows.Media.MediaContext.FireLoadedPendingCallbacks()
bei System.Windows.Media.MediaContext.FireInvokeOnRenderCallbacks()
bei System.Windows.Media.MediaContext.RenderMessageHandlerCore(Object resizedCompositionTarget)
bei System.Windows.Media.MediaContext.RenderMessageHandler(Object resizedCompositionTarget)
bei System.Windows.Interop.HwndTarget.OnResize()
bei System.Windows.Interop.HwndTarget.HandleMessage(WindowMessage msg, IntPtr wparam, IntPtr lparam)
bei System.Windows.Interop.HwndSource.HwndTargetFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
bei MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
bei MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
bei System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
bei MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(Object source, Delegate method, Object args, Int32 numArgs, Delegate catchHandler)
bei System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs)
bei MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)
bei MS.Win32.UnsafeNativeMethods.ShowWindow(HandleRef hWnd, Int32 nCmdShow)
bei MS.Win32.UnsafeNativeMethods.ShowWindow(HandleRef hWnd, Int32 nCmdShow)
bei System.Windows.Window.ShowHelper(Object booleanBox)
bei Shiny.App.OnStartup(StartupEventArgs e)
bei System.Windows.Application.<.ctor>b__1(Object unused)
bei System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
bei MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(Object source, Delegate method, Object args, Int32 numArgs, Delegate catchHandler)
bei System.Windows.Threading.DispatcherOperation.InvokeImpl()
bei System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
bei System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
bei System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
bei System.Windows.Threading.DispatcherOperation.Invoke()
bei System.Windows.Threading.Dispatcher.ProcessQueue()
bei System.Windows.Threading.Dispatcher.WndProcHook(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
bei MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
bei MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
bei System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
bei MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(Object source, Delegate method, Object args, Int32 numArgs, Delegate catchHandler)
bei System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs)
bei MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)
bei MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg)
bei MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg)
bei System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame)
bei System.Windows.Application.RunInternal(Window window)
bei System.Windows.Application.Run()
bei Shiny.App.Main()
 
Seltsam - ich habe das mit vielen Programmen und älteren Spielen ohne Steam schon so gemacht und hat immer geklappt.
 
im cmd den befehl mklink /j nutzen und gut ist
einfacher als die angegebenen Möglichkeiten und auch schneller
 
In so einem Fall durchsuche ich die Registry einfach nach dem aktuellen Pfad.
Sollte ein entsprechender Eintrag gefunden werden (fast immer), schreibe ich dort den gewünschten, neuen Pfad rein.

Kann mich jetzt nicht daran erinnern, dass das jemals nicht funktioniert hat.

Oder eben 'ne symbolische Verknüpfung anlegen, wie schon mehrfach vorgeschlagen.
 
Unter Win 10 muss man nicht mehr in Registry den Eintrag für den neuen Speicherort ändern, sondern kann es direkt im System Bildschirm machen. Siehe hier
 
@Justan
Das funktioniert garantiert nicht... glaube kaum das du das bei einer grösseren Applikation schon geschafft hast

@Claus

das ist nur für die Windows store apps wie es aussieht
 
Danke für die vielen Antworten.

Ich würde gerne als erstes das mit

befehl mklink /j ausprobieren. Wie muss ich das genau machen: Also ich installiere erstmal das Programm ganz normal. Dann ist es mit all seinen dateinen in C: APP data usw. Wie bekomme ich es dann zum Laufen in einem anderen Verzeichnis ?
Ergänzung ()

Achso ich habe Windows 7
 
1. .Net Applikation (geht der Hersteller auf seiner Webseite mal gar nicht ein > Buh)
2. Setup.exe /? listet die Auswahl der Optionen an, die für die Installation zur Verfügung stehen (keine Pfadangabe möglich)
3. also Webinstaller (geht aus 2 hervor)
4. Der Webinstaller lädt sämtliche Programmdaten während der Installation nach %temp% (usertemp), kopiert dann nach C:\Users\username\AppData\Local\Apps\2.0


Also, das ganze Geraffel aus diesem Verzeichnis nach D: (oder wohin auch immer, nur kein Netzlaufwerk) kopieren

D:\Magic

zurück zu C:\Users\username\AppData\Local\Apps\2.0 und dort die Hardlinks erstellen, also Eingabeaufforderung im Verzeichnis öffnen (Shift+Rechtsklick) und

mklink /j Data D:\Magic\Data
mklink /j V0AWZW3J.KG6 d:\Magic\V0AWZW3J.KG6 (der Ordner kann bei dir anders heißen)

Sind in deinen Pfaden Leerzeichen, setze sie in Anführungszeichen. Außerdem musst du natürlich die Originalverzeichnisse vorher löschen oder umbenennen.
 
Zuletzt bearbeitet:
mklink /j C:\xyz\abc\hallo P:\neubla\anderesbla\undmehr

solltest du einen Pfand mit abstand haben zb: C:\hallo du\dabist\noch mehr
so musst du 2 davon rein machen "
zb: "C:\hallo du\dabist\noch mehr"
 
Ok Danke ich versuch es mal.
Ergänzung ()

Also: ich hab den Ordener 2.0 jetzt kopiert.

2016-09-18_133703.jpg

Jetzt bin ich in C: und im Ordner 2.0 da sind diese Dateien

2016-09-18_133531.jpg

Jetzt öffne ich die Eingabeaufforderung und es erscheint
2016-09-18_133731.jpg

So und was geb ich da jetzt genau ein ?
 
LL_CooL_O schrieb:
@Justan
Das funktioniert garantiert nicht... glaube kaum das du das bei einer grösseren Applikation schon geschafft hast
[...]

Aber natürlich funktioniert das, solange die Software den eigenen Pfad aus der Registry liest.
Das hat auch vor 20 Jahren mit Win95 schon so funktioniert :)
 
Steht doch oben mehr als eindeutig und mehrfach wiederholt da. Streng dich mal ein wenig an, Honig wird dir keiner um die Backen schmieren.
 
Alle klar :) ich werds mal so machen.
Ergänzung ()

Alter Krass Geil es funktioniert. :)

Vielen Dank :D
 
Zurück
Oben