Inlägg

Inlägg som asdfgh har skrivit i forumet
Av asdfgh

Okej, men denna gång visa det sig StreamWriter version=4.1.0.0 inte hade en constructor med string.

https://i.imgur.com/EUP2cbY.png

Och bara för att göra det glass klart så har vi version 4.0.0.0 som hade denna constructor.

https://i.imgur.com/b0efQCN.png

@anon81912 i bland är det värt att hjälpa till i stället för att blame:a att någon är en skit innan du ger det en ärlig chans.

Av asdfgh

Vad är SBS?

Min riktigta klass heter inte FileWriter utan CsvFileWriter, så det är inget problem (bara exempel koden ovan), sedan har jag även dubbel kollat StreamWriter (nyss bara för att vara säker).

En annan fråga är inte visual studio "smart" nog att säga att "denna class finns redan"?

Av asdfgh

Va du ska tänka på enligt mig.

  1. kolla så att disken med grub körs först i boot ordningen -> visa dator måste du kolla att grub disken är fysiskt inkopplad på disk port1 i ditt moderkort, medan andra räcker en UEFI/BIOS inställning för välja disk.

  2. Se till så grub är updaterat och känner till rätt ubuntu/windows på dina diskar -> om ej går det att fixa med live-OS som till exempel boot repair (tror de även går med ubuntu live-OS).

  3. (om du installera om båda OS tips) om du väljer att installera om båda operativsystemen är det att rekommendera Ubuntu sist, Så slipper man sedan gå in och fixa grub som boot target.

Av asdfgh

Vidare är det en kompis som säger att för han fungerar det. Kan de vara nåt med visual studio 2015?

Av asdfgh

C# arv från StreamWritter och -Reader || base constructor problem.

Hej Sweclockers.

Så jag börja lek med C# för första gången i går. Så jag tänkte att jag skulle bygga en telefonbok för att lära mig lite mer. Hur som helst så som jag har förstår det ska jag kunna göra så här:

public class FileWritter : StreamWritter{ public FileWritter(Stream stream): base (stream) { } // Sätter StreamWritter's stream constructor. public FileWritter(string path) : base (path) {} // sätter StreamWritter's path constructor. }

Men då klagar kompilatorn på den andra constructorn att den inte kan göra om string till System.IO.Stream, jag förstår inte varför då StreamWritter har redan en egen constructor som är string path, varför försöker ens kompilatorn göra denna "konvering"? Hur ska jag få det att fungera?

Tack för svar!

Av asdfgh

länka 3rd party bibilotek g++ || deras cmake lägger ej filer i /usr/include eller /usr/local/include

Hej!

System info:

  • OS: Ubuntu 16.04 gnome.

  • Compiler: g++ (Ubuntu 5.4.0-6ubuntu1~16.04.4) 5.4.0 20160609

Så jag och några kompisar tänkte testa leka lite med sc2api som jag har byggt via deras instruktioner (se länk innan). Hur som helst, jag lekt med andra tredje part bibliotek (SFML, gnutls, boost m.m.) tidigare har dock haft turen att de lagt in dem in /usr/include samt skapa en länk flagga till g++ via deras cmake/make filer. Denna gång hade jag inte sådan tur. Då jag vet var alla filer är (headers: /home/user/src/s2client-api/include/ och .cc: /home/user/src/s2client-api/src/). Antar jag kan "kopiera"/"flytta" dessa filer will /usr/... men hur kan jag få som t,ex. gnutls en länk flagga (-lgnutls) till dessa för g++?

Tack för svar!

Av asdfgh

Ja, det där låter inte helt dumt. Får testa det om/när jag hittar problem med nuvarande.

Tack för förslaget!

Av asdfgh

Det ända sättet jag har fått det att fungera "bra" är via att gör två trådar en send och en ta emot tråd för samma socket alternativt non-blocket socket. Båda dessa metoder har då gjort att CPU:n på servern fått för mycket trådar (leder till att CPU jobbar sönder sig själv), jag testade med att "söva" trådarna någon milli sek när de inte hade något att göra, men så fort man ökar klienterna från 1 till 3-4 så blev det otroligt mycket CPU användning hur som helst. Troligen så går det bra med en socket per client, bara jag som inte hittat en bra lösning på detta där full duplex fungerar.

Av asdfgh

Ja, då ingen har svarat. Kan jag säga att min lösning vart att använda: shutdown(socket, SHUT_RDWR);

Av asdfgh

c++ || sys/socket.h (select x2 (sender och receiver select socket) || Smart sätt att sköta "pairingen" mellan sockets

Hej SweC.

Så ni kanske har sätt någon av mina många trådar gällande sys/socket.h. Iaf jag kom fram till att jag gjort en dålig metod (använda induella trådar för varje en skild socket (vart för många trådar och cracha servern)) Så nu har jag tänkt om min server har nu två "mastersockets" som använder select (konceptuellt kan ni se denna sida) för nya anslutning osv. dvs bara två trådar: en för mastersocket för skicka till client och en för mastersocket som tar emot från client. Då jag nu skulle vilja "paira" skicka och ta emot sockets för en specifik client så känner jag att de metoderna jag har kommit fram till (se nedan) är lite långsökta och att det borde finnas bättre metod. Är det så att någon har en bättre metod skriv gärna ner det i tråden.

Min metod går nu ut på att innan resten av programmet kan skicka/(ta emot) till en client så måste server genomföra en pairing som görs på följande sätt (repeteras varje gång när ett nytt meddelande ska skickas eller tas emot):

  1. (Server): kollar upp alla icke "pairade" skicka subsocket's.

  2. (Server): till varje icke pairade som hittas skickas då: "Token:[ServersSkickaSubsocketIndex]:[RandomgenereratNummer]:xxyyxx:" (detta meddelande sparas tills pair med det är gjort).

  3. (Client): ta emot meddelandet (Token:[ServersSkickaSubsocketIndex]:[RandomgenereratNummer]:xxyyxx:)

  4. (Client): Skickar tillbaka samma meddelande till servern på clientens skicka socket.

  5. (Server): Upptäck all icke "pairade" ta emot subsocket's

  6. (Server): Kolla om den fått ett "token" meddelande från en eller flera av subsocket's (om ja gå vidare, om nej "return")

  7. (Server): Parsa ut [ServersSkickaSubsocketIndex].

  8. (Server): Hitta Skickar subsocket:en och kontrollera att "token" meddelandet den skicka är det samma som den tog emot

  9. (Server): Om steget innan ja: spara att dessa två subsockets är till samma client, annars logga och return.

Tack för eventuell hjälp!

Av asdfgh

Finns en norsk e-post leverantör som en lärare på universitet höjde på grund av hur de hantera säkerhet (kommer dock inte ihåg dess namn).

Av asdfgh

När jag kollar upp nya sidor att köpa saker från brukar jag kolla recensionerna (vilket du har gjort) men jag bruka tänka att majoritet (så stor som möjligt) ska säga att det är bra och inte en scamersida. Hur som helst är det en marginell majoritet, 50/50 eller få recensioner brukar jag skippa den sidan och leta vidare. (DOCK aldrig köp annat än VPN tjänster med bitcoins).

Av asdfgh

För att "starta" ett företag så går man in på bolagsverketshemsida och registrera. Sedan innan du gör det bör du ha någon form av kunskap inom bokföring, sedan är ju alltid bra att ha koll på företagsformer och sådant för att välja det som passar dig bäst. Jag skulle rekommendera att hyra en ekonom för att få hjälp med pengar hantering tills du är varm i kläderna, då det kan vara mycket nya termer och ekonomiska saker att tänka på.

osäker: Jag har för mig att om företaget omsätter mindre en viss summa så behöver man inte redovisa lika hårt/mycket inför myndigheterna (kan vara ett sätt att testa verksamheten på).

Av asdfgh

Så länge du inte gör något olagligt så kanske du kan få någon av dina föräldrar eller nån kan stå på domänen. Då jag har för mig att valv är/var ganska emot tradingsidor kanske du inte vill att dit Steam-konto riskera att bli bannat eller nå sånt.

Av asdfgh

Har du testat vad @fragwolf sa? Här har du en länk som förklara det mer detaljerat i.a.f..

Av asdfgh

TOR har ju ett bibliotek för python så du kan du fixa direkt i din backend kod att den skapar en .onion adress också vidare. Här har du en kort kod snutt för detta om det är det du menar.

Av asdfgh

När jag använt mig av det har det bara varit att slagit på det via setings och det funkat direkt vet inte va jag ska säga. Kollat så dit wifi kort har support för det i Ubuntu?

Av asdfgh
Skrivet av outbox:

Nej det är inget försenat aprilskämt.

https://arstechnica.com/information-technology/2017/04/ubuntu...

Ubuntu kommer gå över till Gnome och hela telefon/tablet projektet slopas. Canonical väljer att satsa på molnet istället.

Så... vad säger ni om detta? Väntat?

Personligen var så är jag en av de personerna som kört gnome ubuntu version när jag kört ubuntu så det är lite +-0

Av asdfgh

God säkerhet är att man spara hash värdet med saltet (varje salt ska vara individuellt också) för varje individuellt pw i databasen -> vilket leder till att om de använder en vettig hash funktion så ska det inte gå att få ut lösenordet i klartext effektivt nog för att de ska kunna skicka ut lösenord i mejl till användare (dock inget lagkrav har jag för mig). När det kommer till PUL så kan man ta sig runt detta på olika sätt t,ex via användarpolicy genom att de har en sektion som säger du godkänner metoden hur de lagrar detta på osv, MEN det räcker inte med att de säger att du godkänner att de lagrar dina personuppgifter för då måste de lagras "säkert". Läs mer på datainspektionen sida och vad de räcka som personuppgifter.

P.S personnummer räckas som personuppgift enligt datainspektionen iaf.

Av asdfgh

Då alla redan hjälpt dig kan jag visa lite "modernare" metod för att göra detta:

#include <iostream> #include <vector> #include <chrono> #include <random> float medel(std::vector<int>& in){ if(in.size()<=0) // Om vektorn är tom skicka bara svar 0.0 direkt. return 0.0; int sum=0; // Vi gör en cast vid return därav kan vi ta emot större vektorer att ta medelvärdet på. for(auto& i:in) sum+=i; // bara plussar alla element från vektorn till sum variablen. return (float)sum/in.size(); // dela summan med antal element i vektorn, sedan returera vi denna divsions "svar". } // Auto test.... int main(){ std::vector<int> test(10); // Skapar en vektor med 10 element. std::mt19937 generator (std::chrono::system_clock::now().time_since_epoch().count()); // init slumpgenerator. for(auto& i:test){ // Loopar igenom vektor i=generator()%100; // setter element i from vektorn till ett slumptal (mellan 0-99). } std::cout << "The mean value iss: " << medel(test) << std::endl; // kalla på vår medelvärdes funktion, som vi skriver ut det vi fått tillbaka från. return 0; }