Blog de Flap

10/02/2012

Savoir dans quel environnement (32 ou 64 bits?) s’exécute un programme en C++ Builder 6.0 32bits

Filed under: Perso,Virtualisation — flap @ 17:01

J’ai mis un peu de temps à réaliser ce bout de code, donc je le mets à disposition de la communauté…

http://pastebin.com/E5HPJE8C

int __fastcall TF_Main::Is64BitOS()
{
   // Necessite #include <windows.h>
   // http://msdn.microsoft.com/en-us/library/windows/desktop/ms684139%28v=vs.85%29.aspx
   // http://stackoverflow.com/questions/601089/detect-whether-current-windows-version-is-32-bit-or-64-bit

   typedef BOOL (WINAPI *tIsWow64Process)(HANDLE, PBOOL);
   static HMODULE hKernel32 = GetModuleHandle(TEXT("kernel32.dll"));

   int IsWow64 = 0;
   hKernel32 = LoadLibrary("kernel32.dll");

   if (hKernel32 == 0)
   {
      // Probleme lors du chargement de kernel32.dll
      return(-1);
   }

   tIsWow64Process IsWow64Process = (tIsWow64Process) GetProcAddress(hKernel32, "IsWow64Process");
   if (IsWow64Process != NULL)
   {
      if (IsWow64Process(GetCurrentProcess(), &IsWow64))
      {
         FreeLibrary(hKernel32);
         return(IsWow64); // On est dans un environnement Win64
      }
      else
      {
         // Probleme lors de l'appel de IsWow64Process()
         FreeLibrary(hKernel32);
         return(-1);
      }
   }
   else
   {
      FreeLibrary(hKernel32);
      return(0); // On est dans un environnement Win32
   }
}

Exemple d'appel à la fonction Is64BitOS()...
   Is64Bits = Is64BitOS();

   if(Is64Bits > 0)
   {
      ShowMessage("Le programme tourne sur Windows 64 bits.");
      ProgramPath = "\\Program Files (x86)\\";
   }
   else
   if(Is64Bits == 0)
   {
      ShowMessage("Le programme tourne sur Windows 32 bits.");
      ProgramPath = "\\Program Files\\";
   }
   else
   if(Is64Bits == -1)
   {
      ShowMessage("Le programme ne sait pas déterminer son environnement d'exécution en 32 ou 64 bits...\nVeuillez signaler ce problème aux développeurs ;-)");
      ProgramPath = "\\Program Files\\";
   }

21/08/2007

Plugin Google Video pour DokuWiki

Filed under: Perso — flap @ 18:12

Le plugin Google Video

Ce plugin pour DokuWiki crée un lien et affiche une vidéo de Google Video dans une page du Wiki. L’utilisateur peut afficher les vidéos avec une syntaxe simple basée sur l’identificateur unique de chaque vidéo. Il est basé sur l’excellent plugin Youtube réalisé par Ikuo Obataya que vous pouvez retrouver à cette URL (http://wiki.symplus.co.jp/computer/fr/youtube_plugin).

Syntaxe de Wiki

Les vidéos sur Google Video ont une IDENTITÉ unique. On trouve facilement cette IDENTITÉ sur le site Google Video car elle est composée d’une série de chiffres et apparaît dans l’URL lorsque vous consultez la vidéo.

Affichage direct des vidéos

Vous pouvez afficher les vidéos en deux tailles. Utilisez les mots_clés ‘small’ (petit) ou ‘large’ (grand) avant l’identité de la vidéo.
Syntaxe Wiki
{{googlevideo>small:ID_VIDEO_GOOGLE}}
{{googlevideo>large:ID_VIDEO_GOOGLE}}

Code Source

  1. Créez un répertoire ’googlevideo’ dans le répertoire ‘/lib/plugins’.
  2. Copiez le code suivant et collez le dans un fichier nommé syntax.php.
  3. Mettez le fichier syntax.php dans le répertoire ‘googlevideo’.

http://flap.free.fr/google_video/syntaxphp.txt

Powered by WordPress