Page 2 sur 2

Re: problem 32 bit sur 64 bit

Publié : dim. 05/févr./2017 11:21
par ChaudEf
Je crois avoir trouvé mon bonheur... Mais hélas c'est en allemand.

http://www.purebasic.fr/german/viewtopi ... =8&t=19067

Re: problem 32 bit sur 64 bit

Publié : dim. 05/févr./2017 12:49
par Micoute
Même en allemand, la syntaxe PureBasic est la même.

Re: problem 32 bit sur 64 bit

Publié : dim. 05/févr./2017 13:35
par cage
J'ai fais l'essai, car je ne dépose jamais de fichier dans System32
Pour le faire, il faut avoir les droits Administrateur
Les utilisateurs de mes applications n'ont pas toujours ces droits.

Code : Tout sélectionner

;fName$ = "c:\windows\system32\calc.exe"
;fName$ = "c:\windows\system32\appwiz.cpl"
;fName$ = "c:\windows\system32\services.msc"

fName$ = "c:\windows\system32\test.txt"

fSize$ = Str(FileSize(fName$))

MessageRequester(fName$, fSize$)
Il est possible de voir (tester la taille) des fichiers .exe, .cpl et .msc et de les exécuter
Un fichier .txt ou .exe déposé dans System32 n'est pas visible.
Je jetterai un œil au code du forum allemand dans la soirée

Re: problem 32 bit sur 64 bit

Publié : dim. 05/févr./2017 13:49
par ChaudEf
Ce code allemand fonctionne parfaitement, seulement, chose étrange, dans les threads il faut reappeler la procédure

Re: problem 32 bit sur 64 bit

Publié : lun. 06/févr./2017 11:43
par cage
Le code fonctionne parfaitement.
Pas testé dans un Thread
Testé aussi cette version

Code : Tout sélectionner

Define WinDir.s{#MAX_PATH}
GetWindowsDirectory_(@WinDir, #MAX_PATH)
WinDir + "\System32\"

If OpenWindow(0, 0, 0, 600, 300, "DisableWow64FsRedirection", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
  ExplorerTreeGadget(0, 10, 10, 280, 280, WinDir)
  DisableWow64FsRedirection(#True)
  ExplorerTreeGadget(1, 310, 10, 280, 280, WinDir)
  Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow
EndIf