dayslepr
-
Innlegg
463 -
Ble med
-
Besøkte siden sist
Innholdstype
Profiler
Forum
Hendelser
Blogger
Om forumet
Innlegg skrevet av dayslepr
-
-
ting som file permissions er ikke definert i C eller C++-standarene, så det er OS-spesifikt hvordan man gjør dette .. jeg vet ikke hvordan man gjør det under Windows, men under Linux:
Skjult tekst: (Marker innholdet i feltet for å se teksten):
CHMOD(2) Linux Programmer’s Manual CHMOD(2)NAME
chmod, fchmod - change permissions of a file
SYNOPSIS
#include <sys/types.h>
#include <sys/stat.h>
int chmod(const char *path, mode_t mode);
int fchmod(int fildes, mode_t mode);
DESCRIPTION
The mode of the file given by path or referenced by fildes is changed.
Modes are specified by or’ing the following:
S_ISUID 04000 set user ID on execution
S_ISGID 02000 set group ID on execution
S_ISVTX 01000 sticky bit
S_IRUSR (S_IREAD)
00400 read by owner
S_IWUSR (S_IWRITE)
00200 write by owner
S_IXUSR (S_IEXEC)
00100 execute/search by owner
S_IRGRP 00040 read by group
S_IWGRP 00020 write by group
S_IXGRP 00010 execute/search by group
S_IROTH 00004 read by others
S_IWOTH 00002 write by others
S_IXOTH 00001 execute/search by others
The effective UID of the calling process must match the owner of the file, or the process must be privileged (Linux: it must have
the CAP_FOWNER capability).
If the calling process is not privileged (Linux: does not have the CAP_FSETID capability), and the group of the file does not match
the effective group ID of the process or one of its supplementary group IDs, the S_ISGID bit will be turned off, but this will not
cause an error to be returned.
As a security measure, depending on the file system, the set-user-ID and set-group-ID execution bits may be turned off if a file is
written. (On Linux this occurs if the writing process does not have the CAP_FSETID capability.) On some file systems, only the
superuser can set the sticky bit, which may have a special meaning. For the sticky bit, and for set-user-ID and set-group-ID bits
on directories, see stat(2).
On NFS file systems, restricting the permissions will immediately influence already open files, because the access control is done
on the server, but open files are maintained by the client. Widening the permissions may be delayed for other clients if attribute
caching is enabled on them.
RETURN VALUE
On success, zero is returned. On error, -1 is returned, and errno is set appropriately.
ERRORS
Depending on the file system, other errors can be returned. The more general errors for chmod() are listed below:
EACCES Search permission is denied on a component of the path prefix. (See also path_resolution(2).)
EFAULT path points outside your accessible address space.
EIO An I/O error occurred.
ELOOP Too many symbolic links were encountered in resolving path.
ENAMETOOLONG
path is too long.
ENOENT The file does not exist.
ENOMEM Insufficient kernel memory was available.
ENOTDIR
A component of the path prefix is not a directory.
EPERM The effective UID does not match the owner of the file, and the process is not privileged (Linux: it does not have the
CAP_FOWNER capability).
EROFS The named file resides on a read-only file system.
The general errors for fchmod() are listed below:
EBADF The file descriptor fildes is not valid.
EACCES Search permission is denied on a component of the path prefix. (See also path_resolution(2).)
EFAULT path points outside your accessible address space.
EIO An I/O error occurred.
ELOOP Too many symbolic links were encountered in resolving path.
ENAMETOOLONG
path is too long.
ENOENT The file does not exist.
ENOMEM Insufficient kernel memory was available.
ENOTDIR
A component of the path prefix is not a directory.
EPERM The effective UID does not match the owner of the file, and the process is not privileged (Linux: it does not have the
CAP_FOWNER capability).
EROFS The named file resides on a read-only file system.
The general errors for fchmod() are listed below:
EBADF The file descriptor fildes is not valid.
EIO See above.
EPERM See above.
EROFS See above.
CONFORMING TO
The chmod() call conforms to SVr4, SVID, POSIX, X/OPEN, 4.4BSD. SVr4 documents EINTR, ENOLINK and EMULTIHOP returns, but no ENOMEM.
POSIX.1 does not document EFAULT, ENOMEM, ELOOP or EIO error conditions, or the macros S_IREAD, S_IWRITE and S_IEXEC.
The fchmod() call conforms to 4.4BSD and SVr4. SVr4 documents additional EINTR and ENOLINK error conditions. POSIX requires the
fchmod() function if at least one of _POSIX_MAPPED_FILES and _POSIX_SHARED_MEMORY_OBJECTS is defined, and documents additional
ENOSYS and EINVAL error conditions, but does not document EIO.
SEE ALSO
chown(2), execve(2), open(2), path_resolution(2), stat(2)
-
Sony har tatt en snarvei med PS3, som kjører Linux.. (edit: og jeg mener X360 kjører en versjon av WinXP, men dette er bare gjetting fra min side)
Linux er altså (også) portet til prosessoren og arkitekuren til PS3 kallt `Cell':
http://linuxdevices.com/news/NS6219524044.html
..alt dette gir uansett interesannte muligheter..
-
KDE er ikke én vanlig pakke eller étt vanlig program, KDE er en desktopløsning bestående av flere programmer _og_ biblioteker som de programmene trenger for å kjøre .. jeg ville ikke fjernet den meta-pakken, men i stedet tålt at det kanskje følger med litt mer enn det du har bruk for i den (jeg orker ikke forklare hvorfor, men det er veldig gode grunner til at man ikke bør fjerne slike metapakker ........)
skjønner ikke helt hvilke problemer du har med Opera under Dapper, for du har ikke tatt med nok informasjon om hva som går galt.. det skal ikke være nødvendig å installere det xlib-greiene
http://www.opera.com/download/index.dml?op...%20i386&local=y
(det står Breezy, men den fungerer under Dapper også)
dpkg -i pakkenavn.deb
(sist jeg installerte startet forresten Firefox et frontend-program til dpkg som gjorde det over automatisk btw.)
-
kjappt:
* kompiler uten debug-symboler
* kompiler med parametere som reduserer størrelse: http://gcc.gnu.org/onlinedocs/gcc/
..dette gjelder både programmet ditt og selve QT (om du måtte kompilere noe der)..
om det tar lengre tid å kompilere statiske binaries venter du med å kompilere statisk til slutt når du trenger en binary for distribusjon til andre
-
*shrug* .. det er vel mest sansynlig at siden bruker HTTP GET eller POST til å sende inn brukernavn/passord: http://www.jmarshall.com/easy/http/ / http://en.wikipedia.org/wiki/HTTP
disse bibliotekene kan f.eks. gjøre dette: http://www.cliki.net/web%20client
(det du ser etter for ditt favoritt-språk er et bibliotek for en "HTTP klient", eller "web client" .. eller bindinger til det ganske så vanlige libcurl-biblioteket)
-
..fikk lyst til å skrive en rant, så her er den..
jeg synes i grunn man kan hoppe over hele C++ i sammenheng med det meste av (spesiellt) applikasjonsutvikling og heller bruke andre bedre og mer moderne (feature-wise) høynivåspråk
...når det gjelder C kontra C++, om man _absolutt_ trenger hastigheten, nå, med én gang: C er lettere (for ikke å si mulig) å kalle fra disse andre høynivåspråkene når man finner områder (tight inner loops o.l.) man ønsker å optimalisere siden .. i tillegg er C mye ("alltid"?) brukt i sammenheng med operativsystemer, noe som gjør det mulig å bruke høynivåspråkene uten å miste muligheten til å kalle OS-spesifike funksjoner (så denne muligheten er ikke et argument for å holde seg til C++ i det hele tatt egentlig)
cl-user> (foreign-funcall "strlen" :string "Hello World!" :int) 12
C++ er dog mulig å bruke ved å passe på å ikke kreve at man må skrive nye klasser for å bruke biblioteket (f.eks. subklasse+metoder for å definere event-håndterere), og ved å legge til extern "C"-deklarasjoner forran funksjoner .. men man mister liksom litt av poenget da; altså om man videre velger å skrive _hele_ applikasjonen i "portabel assembler" (en C++ som nærmest kan kallest C)
vel, IMHO er det rimelig høl i hue at vi i Y2K bruker et språk som dette, eller for ikke å si i denne familien, frivillig (jeg er klar over de sosiale "problemene"), når man f.eks. allerede i 1960 hadde myemye bedre språk med kun ett problem; dårlig hardware
... dette problemet har vi ikke lengre ...
edit:
"n00bs" som ikke tror på meg som enkeltperson kan spørre hvilke som helst andre med litt peil her; kan man virkelig ikke uttrykke det samme, eller uttrykke seg på samme vis, med C++ som med språk som har eksistert i flere tiår før C++?
("turing complete" tells _IKKE_ ... de som ikke vet hva dette innebærer (ASM-freaks og andre 14iser) når de skal svare kan like gjerne la være ....)
til resten; hva er egentlig grunnen til at dere kaller C++ "avansert"? .. er det fordi man kan gjøre masse "crazy shit" i språket, eller er det, egentlig, fordi det er tungvinnt og gammeldags? ..
... hallo? - ingen som ser dette? ...
..irriterer meg grenseløst over programmererer som akkurat har kommet over første kneika.. de kan så vidt lage noe litt mer avansert enn Hello World i C++, og kommer så med råd til nybegynnere der de forklarer at "C++ er kanskje litt for avansert i starten, men det er språket man må satse på i fremtiden" ... ... når da? i 2060 (også!) eller?
....nei, jeg synes folk skal være veldig kritiske når de vurderer C++ (eller C)....
-
henviser i stedet til denne tråden: https://www.diskusjon.no/index.php?showtopi...dpost&p=6163315
-
hm, det er ikke noen som har litt greie på AJAX/JavaScript i Opera her?
denne applikasjonen http://nostdal.org:6123/hello-world/hello-world.html skal oppdatere tallet ved siden av "The time is: " hvert sekund, men under Opera så skjer ikke dette
debugMsg("debug", "server-initiated: about to send new request"); window.xhr_si.onreadystatechange = siHandler; window.xhr_si.open("POST", "?type=server-initiated", true); window.xhr_si.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8'); window.xhr_si.setRequestHeader('User-Agent', navigator.userAgent); window.xhr_si.send(""); debugMsg("debug", "server-initiated: new request sent");
siHandler, readyState: 1server-initiated: about to send new request
siHandler, readyState: 4
siHandler, readyState: 3
updateElements, response_text: '[["setElement","time",3357397454],["setElement","session-id","4677"]]'
sndReq: '[["redraw"]]'
queueReq: '[["redraw"]]'
server-initiated: new request sent
siHandler, readyState: 1
server-initiated: about to send new request
siste debug-melding er øverst .. det som er snedig, er at etter jeg har kallt abort og skal resende http-requesten (ajax dette) så sender den ikke, den blokker og siste melding blir da "about to send new request" - altså den blir aldri sendt .. har noen peil på dette? IE og FF fungerer som de skal
edit: rop om mer info trengs!
-
googlet frem noe her; http://qtnode.net/wiki/Building_static
-
2 muligheter:
* mekk en installer (finnes gratis-verktøy for det) som legger ved QT-biblioteket
* link inn QT-biblioteket statisk i "exe-fila", slik Opera ha gjordt .. (jeg tror dette er enklest)
-
-
Skjønner mindre og mindre jeg! Nå sku jeg prøve å brenne en cd i K3b også får jeg ikke lagt til wma eller mp3 filer! Mariunae (fra forumet) har hulpi meg men det eneste er vel dette med flere servere og at jeg klarte for det meste alt under Lame (sudo apt-get install lame) eller så var det lime.
Snart gir jeg opp altså og insalerer bare Windows her. Tror jeg skal ha begge plattformer men det er noe problemer med Windows install som jeg ikke har sett noe mere på...
fjern det døde repoet fra /etc/apt/sources.list .. meldingene betyr at den ikke finner filene på de rette stedene der lengre (det er heller ikke et offesiellt Ubuntu-repo; bare noe en eller annen tilfeldig fyr har satt opp på Internett et sted) .. følg i stedet Ubuntus guider på DEN OFFESIELLE wikien når du skal fikse ting m.t.p. codecs o.l.: https://wiki.ubuntu.com/RestrictedFormats
angående mp3 og k3b:
apt-get install libk3b2-mp3
..gjorde susen i dapper
-
..og det du skal frem til er..?
-
nå skal denne fungere under både Firefox (1.5.0.3), Opera (9.00 beta) og Internet Explorer (6.0.2800.1106) ..
edit:
err .. Opera er ikke heeelt på plass ennå
-
ting er som eller av sirkler .. både tid og rom, ingen kan plassere "når", "hvor" og "hva" -- derfor er ting i "virkeligheten" uendelige
dette er min oppfattelse av ting så klart, uten at det beviser noe mer eller mindre endelig enn noen av de andre mer eller mindre seriøse teoriene noen gang har gjordt.. dette fordi hver av dem rekker bare så langt ned eller så langt opp; ingen av dem er komplette..
forsøker man å strekke seg for langt i en av retningene risikerer man å bli gal; gjerne fordi man må plassere seg selv i situasjonene/virkelighetene man finner eller strekker seg mot for å greie og forstå dem
edit:
ment som en tilfeldig (uendelig? ..hah..) rant så klart
-
SATA på laptopen her; det fungerer utmerket med Ubuntu (både Breezy og Dapper), men jeg har et Intel-basert SATA/IDE-chipset da
...0000:00:1f.2 IDE interface: Intel Corporation 82801FBM (ICH6M) SATA Controller (rev 03)
...
generellt sett er det fint å teste med en Live-CD når man er usikker; da får man som regel bekreftet hva som fungerer "out of the box", og hva man kanskje må tukkle litt med for at det skal fungere
-
mulig jeg har misforstått, men dette er da ikke en stillingsannonse?
-
tsg1zzn: ikke at jeg skjønner hva du mener i siste setning, men jo - man kan la en annen "chip" enn CPUen ta seg av oppgaven: http://en.wikipedia.org/wiki/Direct_memory_access#Principle
-
http://swchat.nostdal.org:6123/swchat/main.html
kildekode:
Skjult tekst: (Marker innholdet i feltet for å se teksten):
;;;; http://nostdal.org/SWChat/ ;;;;(defpackage SWChat
(:use :cl :SymbolicWeb :AmUtil))
(in-package :SWChat)
(defparameter *max-length* 100000)
(defclass SWChat (Application)
((username :accessor username-of
:initform (concatenate 'string "anonymous-" (SW::generateID)))
(messages :accessor messages-of :allocation :class
:initform "")
(participants :accessor participants-of :allocation :class
:initform (make-instance 'AppGroup)))
(:default-initargs
:name "SWChat"
:static-path "/home/lars/programming/lisp/swchat/static/"))
(export 'SWChat)
(defmethod initialize-instance :after ((app SWChat) &key)
;; TODO: Some way the instances get removed from the group.
(add app (participants-of app))
;; Set up handlers.
(setf (handler-of app "say") 'say)
(setf (handler-of app "redraw") 'redraw))
(defmethod scrollView ((app Ajax))
"Scroll view so one sees the last message arrived."
(evalJS app "getElt('messages').scrollTop = getElt('messages').scrollHeight;"))
(defmethod redraw ((app SWChat))
(setElement app "messages" (messages-of app))
(setValue app "nick" (mkstr "anonymous-" (SW::generateID)))
(scrollView app))
(defmethod say ((app SWChat) (message string) (nick string))
(setf message (mkstr "<br/>" nick ": " (AmWeb:escapeHTML (AmWeb:urlDecode message))))
;; Update server side..
(setf (messages-of app)
(concatenate 'string (messages-of app) message))
;; ..but make sure it doesn't store too much.
(when (> (- (length (messages-of app)) *max-length*) 0)
(setf (messages-of app)
(subseq (messages-of app)
(- (length (messages-of app)) *max-length*)
(length (messages-of app)))))
;; Send message to `app' (the one who sent the message originally).
(appendToElement app "messages" message)
(scrollView app)
;; Send message to every other client.
(appendToElement (participants-of app) "messages" message)
(scrollView (participants-of app))
(dispatch (participants-of app) app))
edit:
oh, jeg har kun bekreftet at denne fungerer under Firefox og Opera (noen småbugs i Opera fortsatt, men ok) .. en på IRC nevnte at den fungerte under Safari og Konqueror også
om noen er interesserte i et samarbeid m.t.p. design eller lignende er det bare å ta kontakt (jeg har et par andre eksempler liggende også ..)
-
Windows? nope - ikke siden 2001
-
åh .. cookies; de brukes som regel til å referere til sesjons-data på serversiden
Preferences -> Privacy -> Cookies -> View Cookies .. under Firefox dette
de lagres i en fil kallt `cookies.txt' .. hos meg ligger denne i katalogen `~/.mozilla/firefox/'
edit:
står litt mer om det her: http://en.wikipedia.org/wiki/HTTP_cookie
-
antar at du snakker om GUI'er .. her: http://www.pygtk.org/
-
om du bruker Dapper: System -> Help -> System Documentation .. skriv så inn "ntfs" under Search og trykk enter
-
comicz: ja, det fungerer 100%
Programmeringshjelp? Håndtering av nettauksjoner
i Programmering og webutvikling
Skrevet
hvilken side er det snakk om?
teknisk sett: om de har et godt API ("webservices" o.l.), slik som f.eks. amazon.com og andre litt større sider gjerne har bør dette gå greit.. alternativet er å lese av siden og parse, noe som fort blir himmla styrete og "brekker" lett når de gjør endringer på siden
etter en kjapp tur innom qxl.no ser det ikke ut til at de har et API tilgjengelig .. (kanskje man skulle tatt kontakt og tipset dem om at dette hadde vært kjekkt)