Deutsch
Forum

Startup

 

GDL
Hallo,

ich stehe mit meinem Modellbahnprogramm noch vor 2 Hürden die ich nicht hinbekomme.

Wenn nach der Installation das Proggi durch das Installprogramm aufgerufen wird, soll die Verknüpfung von Startmenue.exe in den Startordner.
Hier ist nun das Problem dess Erstellen einer registrierten Verknüpfung und wie heist der Startup Ordner unter Windows in allen WinVersionen.

Und ein letztes mir unüberwindbares Anwenderhinderniss ist die Umschaltung der Bildschirmauflösung, die wirklich keine Hardwaredefekte erzeugt.

Es ist echt nicht zu glauben, vor was für Probleme man gestellt wird, wenn ein Proggi von der breiten Masse nutzbar sein soll.

Servus
Georg
 
Windows7 Xprofan 8,9,10 [...]  [...] 
20.08.2007  
 



zu 1. Welches Installprogramm nutzt Du denn? Dort einfach in der Doku blättern.
zu 2. Hardwaredefekte? [...] 
 
20.08.2007  
 



Nachtrag: Die absolut einfachste Variante zum Anlegen eines Links ist eine .url Datei - im Format einer INI. Natürlich nur wenn Du nicht gleich einen Shortcut (.lnk) anlegen willst.

Schreibe in eine Datei namens meinProgramm.url folgende Zeilen:

[InternetShortcut]
URL=c:meinprogrammprogramm.exe

und schon ist es ein brauchbarer Link (wenn auch mit falschem Icon)
 
20.08.2007  
 




GDL
@iF

Danke für die Hinweise.
Werde den Code von deinem Link testen.

Nach langen Suchen, fand ich den unter Snippet gesaugten Code wieder, der mir vor langer Zeit bei einem anderen Prog Schwierigkeiten machte.
KompilierenMarkierenSeparieren
 $H Windows.ph
 $H Structs.ph
 $H Messages.ph
 $H Commctrl.ph
 $H Shellapi.ph
Declare Bbpsettings$,Hsettings$,Wsettings$,X&
Declare Dev#,Static&,Cb&,Dummy$,Ok&,Change&,Ende&,Gc&,F$

Proc Getcurrentsettings

    Georg   Declare Retstring$,C$,Whx$,Why$,Co$
    C$ = Str$(~Getdevicecaps(~Getdc(0),~Bitspixel))
    Whx$ = Str$(~Getdevicecaps(~Getdc(0),~Horzres))
    Why$ = Str$(~Getdevicecaps(~Getdc(0),~Vertres))

    If C$ = 4

        Co$ = 16 Farben

    Elseif C$ = 8

        Co$ = 256 Farben

    Elseif C$ = 16

        Co$ = HightColor

    Elseif C$ = 32

        Co$ = TrueColor

    Endif

    Retstring$ = Whx$ +  *  + Why$ +  -  + Co$
    Return Retstring$

Endproc

Proc Enumdisplay

    Declare F$,Dd$

    While ~Enumdisplaysettings(0,X&,Dev#)

        If Long(Dev#,104) = 4

            F$ = 16 Farben

        Elseif Long(Dev#,104) = 8

            F$ = 256 Farben

        Elseif Long(Dev#,104) = 16

            F$ = HightColor

        Elseif Long(Dev#,104) = 32

            F$ = TrueColor

        Endif

        Bbpsettings$ = Bbpsettings$ + Str$(Long(Dev#,104))+|
        Hsettings$ = Hsettings$ + Str$(Long(Dev#,108))+|
        Wsettings$ = Wsettings$ + Str$(Long(Dev#,112))+|
        Dd$ = Str$(Long(Dev#,108)) +  *  + Str$(Long(Dev#,112)) +  -  + F$
        Addchoice(Cb&,Dd$)
        Inc X&

    Wend

Endproc

Windowstyle 20
Windowtitle Display-Changer
Window 10,10-250,150
Cls ~Getsyscolor(~Color_btnface)
Setdialogfont ~Getstockobject(~Default_gui_font)
Dummy$ = Getcurrentsettings()
Static& = Create(TEXT,%Hwnd,Current Settings : +Dummy$,10,10,300,24)
Cb& = ~Createwindowex($200,COMBOBOX,,~Ws_child | ~Ws_visible | ~Cbs_dropdown | ~Ws_vscroll ,10,40,220,300,%Hwnd,100,%Hinstance,0)
Sendmessage(Cb&,~Wm_setfont,~Getstockobject(~Default_gui_font),1)
Ok& = Create(BUTTON,%Hwnd,Ende,10,70,80,24)
Change& = Create(BUTTON,%Hwnd,Change,150,70,80,24)
Dim Dev#,156
Enumdisplay()
Sendmessage(Cb&,~Cb_setcursel,Sendmessage(Cb&,~Cb_findstring,0,Addr(Dummy$)),0)

Whilenot Ende&

    Waitinput

    If Getfocus(Change&)

        Setfocus(%Hwnd)
        Gc& = Sendmessage(Cb&,~Cb_getcursel,0,0)
        Long Dev#,40 = ~Dm_pelsheight | ~Dm_pelswidth | ~Dm_bitsperpel
        Long Dev#,104 = Val(Substr$(Bbpsettings$,Gc&+1,|))
        Long Dev#,108 = Val(Substr$(Hsettings$,Gc&+1,|))
        Long Dev#,112 = Val(Substr$(Wsettings$,Gc&+1,|))

        If Gettext$(Cb&) <> Mid$(Gettext$(Static&),20,100)

            If ~Changedisplaysettings(Dev#,~Cds_updateregistry) = ~Disp_change_restart

                If Long(Dev#,104) = 4

                    F$ = 16 Farben

                Elseif Long(Dev#,104) = 8

                    F$ = 256 Farben

                Elseif Long(Dev#,104) = 16

                    F$ = HightColor

                Elseif Long(Dev#,104) = 32

                    F$ = TrueColor

                Endif

                Settext Static&,Current Settings :  + Str$(Long(Dev#,108)) +  *  + Str$(Long(Dev#,112)) +  -  + F$
                External(setupapi.dll,SetupPromptReboot,0,0,0)

            Else

                Settext Static&,Current Settings : +Getcurrentsettings()

            Endif

        Else

            Messagebox(Auflösung muss nicht geändert werden,Meldung,0)

        Endif

    Elseif Getfocus(Ok&)

        Dispose Dev#
        Ende& = 1

    Endif

Endwhile

End

Mit diesem Code ging es bei 3 meiner Rechner gut, beim 4ten gabs dann bunte Streifen am Monitor und ein helles Pfeifen.So schnell habe ich dann noch nie den Resetknopf gedrückt.

Zu dem Shortcut: Dies heist, wenn mein Proggi nen Schortcut beim ersten Aufruf anlegt, wird mein Proggi dann anschliessend bei jedem Windowsstart automatisch gestartet?

Servus
Georg
 
Windows7 Xprofan 8,9,10 [...]  [...] 
20.08.2007  
 




Jörg
Sellmeyer
Hallo Georg,
Damit funktioniert es zumindest von W95 bis XP:
KompilierenMarkierenSeparieren
Vista könnte ja mal einfach jemand bestätigen oder verneinen, dann wissen wir wieder mehr.
Gruß
Jörg
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
20.08.2007  
 




Rolf
Koch
Unter Vista bekomme ich korrekt den Eintrag zurückgeliefert.
 
20.08.2007  
 



@Georg: Wirst halt ne Auflösung eingestellt haben die der Monitor nicht brachte - gleich kaputt sollte aber auch ein Monitor davon nicht gehen - sei denn es ist ne Uraltkiste die aber genauso gut an Altersschwäche dahinvegetieren könnte. Einen alten Monitor würde ich eh nicht zu sehr mit Auflösungsänderungen quälen.
 
20.08.2007  
 




Frank
Abbing
Psssiooong!
 
21.08.2007  
 




GDL
Hallo iF,

ich weis ja nicht welche Grafikkarten, bzw. Monitore an den Kisten hängen.Und das es ältere bis Steinzeitkisten sind ;davon kann man ausgehen.
Man müsste irgendwie ermitteln können was die Kiste kann.

Servus
Georg
 
Windows7 Xprofan 8,9,10 [...]  [...] 
21.08.2007  
 



Die Proc Enumdisplay tut genau dies.
 
21.08.2007  
 



Frank Abbing
Psssiooong!


Rattaplöhm!
 
21.08.2007  
 




GDL
Irgendwie kann es aber nicht gehen, da mein Code ja alle Möglichkeiten anscheinend abfrägt und trotzdem pfeifts mit Streifenbild. Stelle ich aber die Schrift von grosse Schriften auf kleine Schriften und die Zeilenfrequenz manuell um gehts.
Irgendwie haut das ganze nicht hin.

Servus
Georg
 
Windows7 Xprofan 8,9,10 [...]  [...] 
21.08.2007  
 




Antworten


Thementitel, max. 100 Zeichen.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Beitrag  Schrift  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Themenoptionen

1.827 Betrachtungen

Unbenanntvor 0 min.
Peter Max Müller13.11.2017

Themeninformationen



Admins  |  AGB  |  Anwendungen  |  Autoren  |  Chat  |  Datenschutz  |  Download  |  Eingangshalle  |  Hilfe  |  Händlerportal  |  Impressum  |  Mart  |  Schnittstellen  |  SDK  |  Services  |  Spiele  |  Suche  |  Support

Ein Projekt aller XProfaner, die es gibt!


Mein XProfan
Private Nachrichten
Eigenes Ablageforum
Themen-Merkliste
Eigene Beiträge
Eigene Themen
Zwischenablage
Abmelden
 Deutsch English Français Español Italia
Übersetzungen

Datenschutz


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie