Jak dodać i zrobić pliczek .manifest, żeby przy odpaleniu mojej aplikacji Od razu pytał o zezwolenie na zmiany (jako administrator) w Dev-C++? Chodzi o podniesienie uprawnień...
- Używaj czegoś innego niż Dev-C++. Dev-C++ jest już przestarzały, ma dużo błędów itp.
Możesz użyć np. CodeBlocks, MS Visual C++ 2010 Express 2010, QT.... Ewentualnie jeśli Ci zależy na czymś podobnym do Deva to wxDev-C++ (ten chociaż jest rozwijany). - Spróbuj to umieścić w pliku z manifestem :
<?xml version="1.0" encoding="utf-8" ?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0" >
<assemblyIdentity version="1.0.0.0"
processorArchitecture="X86"
name="someExecName"
type="win32" />
<description>Program description</description>
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
<security>
<requestedPrivileges>
<requestedExecutionLevel level="requireAdministrator" />
</requestedPrivileges>
</security>
</trustInfo>
</assembly>
Tak, ja rozumiem jak ma wyglądać plik .manifest ale jak mam go połączyć z moim projektem? Tak żeby po wykompilowaniu plik exe miał tą "tarczę" UAC.
w Dev-C++? nawet jeśli jest tam taka opcja, to pewnie i tak nie działa prawidłowo. Nie męcz się. Taki manifest to chyba zwyczajnie w zasobach exeka sobie siedzi.
Przerzuć się na MS Visual C++.
Dev CPP jest już stary, nie wiem czy coś takiego da się zrobić w prosty sposób...
Tutaj masz jak to zrobić w MS Visual C++
Zainstalowałem Visual C++ 2010 i wywala miliard błędów, ciągle poprawiam coś, już od 1,5 godziny i ciągle nowe...
W Dev-Cpp żadnego błędu.
Nie da się jednak tego manifestu dołączyć w Dev-Cpp?
dev nie wywala błędów.
visual wywala błędy.
Nawet moje kapcie nie mają pytań.
Udało mi się zrobić manifesta w Dev-Cpp.
- Program przy uruchomieniu prosi o uprawnienia (potrzebuje je tylko 1 raz, żeby móc się skopiować)
- Kopiuje się do autostartu (do odpowiedniej ścieżki)
Jednak przy włączeniu kompa na nowo program nie odpala się. Myślę, że to przez to że ma nadane wymuszanie uprawnień i nie chce się sam uruchomić tylko idzie go odpalić ręcznie. Jak zrobić, aby program nie wymagał już uprawnień? Bądź tylko 1 raz - przy uruchomieniu?
Może stwórz program uruchamiający Twój exec DevCPPowy w np Visual Studio C# albo Visual C++ i nadaj mu odpowiednie uprawnienia... tzn temu plikowi wygenerowanemu w Visualowym execu. Ten program by tylko wywolywal z prawami administratora ten plik exe w devie wygenerowany.
Ja cos takiego kiedys robilem w C# .NET. Program (menu) bylo napisane w C# i uruchamialo sie jako administrator i wywolywalo drugi program... tez z uprawnieniami admin...
Ewentualnie w VS C++ stwórz aplikacje konsolową i w main umieść to :
ShellExecute(NULL, "runas", "C:\\TwojProgram\\Programik.exe", 0, 0, SW_SHOWNORMAL);
http://msdn.microsoft.com/en-us/library/windows/desktop/bb762153%28v=vs.85%29.aspx