1 extern int f1(); 2 extern int f2(void*); 3 extern void* f3(int); 4 int xmsih; 5 typedef unsigned short XWCHAR; 6 xstrlenW(const XWCHAR * str)7inline unsigned int xstrlenW( const XWCHAR *str ) 8 { 9 const XWCHAR *s = str; 10 while (*s) s++; 11 return s - str; 12 } 13 14 msi_dialog_register_class(void)15static int msi_dialog_register_class( void ) 16 { 17 int cls; 18 19 if( !f2( &cls ) ) 20 return 0; 21 if( !f2( &cls ) ) 22 return 0; 23 xmsih = f1(); 24 if( !xmsih ) 25 return 0; 26 return 1; 27 } 28 xmsi_dialog_create(const XWCHAR * szDialogName)29void *xmsi_dialog_create(const XWCHAR* szDialogName) 30 { 31 msi_dialog_register_class(); 32 return f3(xstrlenW(szDialogName)); 33 } 34