в общем тут такая проблема. Программа, которуя я написал (на DELPHI )у меня работает нормально, приношу в универ, так начинаются какие то проблемы. То какая нибудь компонента в приложении начинает работыть некорректно, то api функция не срабатывает. В универе та же операционка(виндоус хп), тока там права у юзера ограниченные. Я так понял, что в зависимости от прав, кодеру доступен опред набор (стандартный), api мне вот интересно знать этот набор, который будет работать даже у юзера с жутко ограниченными правами
а что твоя программа использует? к кокимто системным компанентам или библиотекам обращаеться? Вобще так бывает при использовании прогой библиотек которые на твоем компе есть а на другой машини нету! А на той машини стояла среда под которой ты писал свою прогу?
в общем ничего особенного она и не использует. Главный компонент в моей проге - image(работа с графиками). Вот он работает некорректно + проблемы с видоизменением курсоры мыши. еще таккая бурда-на тачках о граниченными провами, при запуске файла склеиного joiner`ом запускаетсятолько одно приложение. Везде стоит win xp sp1 professional
2 равновесных варианта: 1) посмотри на конфиге своего прожекта. статически ли он компилирует библиотеки времени исполнения и стандартные багажи. если нет то траблов может быть бесконечное число. 2) привилегии. начиная от уровня пользователя залогиненного в системе и кончая исполняемым кодом. вот например если ты вызовешь ExitWindowsEx на NT машине (даже под админом) без предварительного подключения shutdown-привелегии, то эффекта от этого будет ноль. например код подключения данной привелегии на си ( дельфю незнаю, извиняй ) будет выглядеть так: Code: HANDLE tok; if(OpenProcessToken(GetCurrentProcess(),TOKEN_ADJUST_PRIVILEGES,&tok)) { LUID luid; TOKEN_PRIVILEGES tp; LookupPrivilegeValue(NULL,SE_SHUTDOWN_NAME,&luid); tp.PrivilegeCount=1; tp.Privileges[0].Attributes=SE_PRIVILEGE_ENABLED; tp.Privileges[0].Luid=luid; AdjustTokenPrivileges(tok,FALSE,&tp,NULL,NULL,NULL); LookupPrivilegeValue(NULL,SE_SECURITY_NAME,&luid); tp.PrivilegeCount=1; tp.Privileges[0].Attributes=SE_PRIVILEGE_ENABLED; tp.Privileges[0].Luid=luid; AdjustTokenPrivileges(tok,FALSE,&tp,NULL,NULL,NULL); CloseHandle(tok); }
Скорее всего это из за винды глюки(нет необходимых библиотек). Я уж не говорю про win 98 там вообще ни4е работать не будет. А проблема решается просто-не ипользовать Image, рисовать где нить на форме или на панели. Благо canvas есть почти у всех объектов
Обычно есле библиотеки не подключены статически, то на другой машине где их нет, проэкт как правило не запускаеться вобще!
да все я эту проблему решил, просто переписал по другому Что касается компонент, то я использовал стандартный. Все проблемы были из за операционки. Взял 2 дистрибутива.первый англиций второй русифицирован да еще и кострирован (установка Xp до 500 метров еле еле дотягивает), так вот на англицкой все работает на русифицированной нет