|
|
|
На win x64 файл не хочет копироваться в буквально system32
|
|||
|---|---|---|---|
|
#18+
Подчеркну, что система X64!!! 1)Находим системную директорию: Код: plaintext 1. OK, в данном случае годится. 2) Копируем туда dll (драйвер монитора принтера). Код: plaintext 1. 2. 3. 4. Скопировалось, но... в SysWOW64 Все бы ничего, только дальше, вызывая 3) Код: plaintext 1. Дело в том что dll-ка 64-битная (похоже на то!) но по задумке ее вызов при установке монитора должен осуществляться именно из system32, иначе failed. Как правило эти "фокусы" виндов идут на руку, напр.чтобы не переписывать инсталлятор, но в данном случае просто вредно для здоровья. Есть идеи? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.06.2009, 17:26 |
|
||
|
На win x64 файл не хочет копироваться в буквально system32
|
|||
|---|---|---|---|
|
#18+
Добавить в переменную path путь к SysWOW64? А вообще, какие значения передаются в AddMonitor? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.06.2009, 17:30 |
|
||
|
На win x64 файл не хочет копироваться в буквально system32
|
|||
|---|---|---|---|
|
#18+
Не, добавлять в path путь к SysWOW64, в лучшем случае это не даст ничего, в худшем еще нарушит идеологию 64-х битных виндов. Но файл "monitor64.dll" точно должен оказаться именно в system32 так как я ее пишу по буквам, а не так как винды себе на уме решают. Вот код, м.б. действительно можно оставить dll-ку в sys...64 и что-нибудь придумать в PrinterMonitor чтоб схватывало, но точно говорю:задумано, чтобы она оказалась в system32! Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.06.2009, 17:48 |
|
||
|
На win x64 файл не хочет копироваться в буквально system32
|
|||
|---|---|---|---|
|
#18+
А если прописать в .pDLLName полный путь? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.06.2009, 17:53 |
|
||
|
На win x64 файл не хочет копироваться в буквально system32
|
|||
|---|---|---|---|
|
#18+
Скажем так, если "monitor64.dll" положить туда, т.е. в system32 "ручками", то ошибки не возникает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.06.2009, 17:54 |
|
||
|
На win x64 файл не хочет копироваться в буквально system32
|
|||
|---|---|---|---|
|
#18+
>>А если прописать в .pDLLName полный путь? Попробую сейчас ,конечно, уже подумал не вопрос Но вопрос-то даже не в этом, он более глобальный. Что не существует способа залезть в system32 из программы что-ли. М.б. какие дополнительные API ? Не может же такого быть что нельзя. Понятно что винды "умничают" в расчете "на дурака", но если НАДО . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.06.2009, 18:01 |
|
||
|
На win x64 файл не хочет копироваться в буквально system32
|
|||
|---|---|---|---|
|
#18+
> Автор: Дмитрий77 > Скажем так, если "monitor64.dll" положить туда, т.е. в system32 "ручками", то ошибки не возникает. А почему такое настойчивое желание положить именно в system32 ? Я прочитал, что так работает, но по другому не работает именно из-за некорректной установки. Ведь название говорит что это для 32-х разрядного хлама. МС поменял всю идеологию размещения программ на 64-х разрядах и мне кажется имеет смысл понять что и куда теперь нужно устанавливать. Да и например последний ран-тайм настойчиво рекомендуют устанавливать, а не копировать, как это можно было раньше. З.Ы. Это просто мысли вслух, помочь не на чем З.Ы.Ы. MSDN Все, что нужно знать, чтобы начать программировать для 64-разрядных версий Windows Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.06.2009, 18:12 |
|
||
|
На win x64 файл не хочет копироваться в буквально system32
|
|||
|---|---|---|---|
|
#18+
To Antonariy: Вот так не схватывает Код: plaintext 1. Код: plaintext 1. Получить WindowsDirectory & "sysWOW64" независимо от виндовских игр для меня как бы не проблема, я этот вопрос проработал уже: http://sql.ru/forum/actualthread.aspx?tid=668385 Код: plaintext 1. Но получается что: 1) CopyFile подменяет истинное название SystemDirectory 2) А вот AddMonitor честно глядит в сторону родной старой System32 To Игорь: >>А почему такое настойчивое желание положить именно в system32 ? А это не моя прихоть, принтер то не мой, не дорос я еще принтеры писать, а вот устанавливать программно очень даже научился. А вот ну как этот монитор сейчас "печатать не будет" (потому что лежит не там где задумано, кто его знает почему его в 32 пихнули, он ведь точно 64bit, м.б. сдуру, а м.б. умышленно, сделали просто "чтоб боботало"), проще его туда же и пихнуть и не париться, чем разбираться в рекомендациях. Хотя конечно надо! Надо! Почитаю обязательно.. Т.е. я бы все-таки вернулся к вопросу: как скопировать именно в system32? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.06.2009, 18:42 |
|
||
|
На win x64 файл не хочет копироваться в буквально system32
|
|||
|---|---|---|---|
|
#18+
Поигрался еще, вроде все корректно работает, печатает. Т.е. ну пусть живет в sys...64. Единственное, думаю тогда уж делать res = CopyFile(InstallPath & "monitor64.dll", SystemWow64Directory & "monitor64.dll", False) используя Код: plaintext 1. Не то что не доверяю, а так как-то спокойнее, а то вдруг еще подведет при других региональных настройках, мало чего... Гм, а вопрос таки остается... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.06.2009, 19:20 |
|
||
|
|

start [/forum/topic.php?fid=60&msg=36026306&tid=2160881]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
55ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
41ms |
get tp. blocked users: |
1ms |
| others: | 207ms |
| total: | 346ms |

| 0 / 0 |
