winapi - Kør windows ansøgning inde i et andet vindue

Indlæg af Hanne Mølgaard Plasc

Problem



Er det muligt at køre et Windows-program (der åbner et vindue på øverste niveau), inde i et andet vindue? Eller opsæt et alternativt 'desktop'/falsk skrivebord, der ejer vinduet?


Jeg bruger UI Automation til at automatisere en ansøgning til test. Jeg ønsker at sætte applikationen under test i en slags sandkasse: Et kunstigt forældresvindue mellem skrivebord og app eller pseudo-desktop, anden destop osv. Dette skrivebord (og appen under test) behøver ikke være synlig.


Forskellige forekomster af applikationen under test (på det normale skrivebord eller i sandkasser) bør ikke være i konflikt med hinanden (vinduets navn/klassevis) - appen under test er sikker at have flere forekomster ...


Jeg er klar over, at dette virker hackisk, så win32 hacks ville være velkomne. :)

Bedste reference


Du kan prøve at bruge CreateDesktop til at oprette et skrivebord og sende sit navn i STARTUPINFO, når du starter målprogrammet. [1]

Andre referencer 1


Hvis du 'automatiserer en applikation til testning, så tror jeg, du' forsøger at oprette en SandBox for at applikationerne skal testes. Der er et meget godt bibliotek af Liu Yu for dette Også se dette: Opret Sandbox C # og dette: Sådan opretter du en let C-kode sandkasse? [2]